none
Failure with EWS via WWSAPI (native code) RRS feed

  • Question

  • Failure with EWS via WWSAPI (native code)

    I'm trying to make a request against Exchange(*) EWS
    using WWSAPI (native code).
    Exchange replies with the error:
     "Cannot process the message because the content type 
     'application/soap+xml; charset=utf-8; 
      action="http://schemas.microsoft.com/exchange/services/2006/messages/ResolveNames"'
      was not the expected type 'text/xml; charset=utf-8'."

    It seems the SOAP envelope is ill-formed.
    If I manually create the envelope (without WWSAPI) EWS gives no error.

    Is WWSAPI supported for EWS?
    I can provide all the code for testing.

    Thanks & regards
    josue

    On WebServices tracing I see the following events:

    --------------------------------------------------
    Sending message - bin  (id: 1): 
    3C 73 3A 45 6E 76 65 6C 6F 70 65 20 78 6D 6C 6E 73
    3A 73 3D 22 68 74 74 70 3A 2F 2F 77 77 77 2E 77 33
    2E 6F 72 67 2F 32 30 30 33 2F 30 35 2F 73 6F 61 70
    2D 65 6E 76 65 6C 6F 70 65 22 3E 3C 73 3A 48 65 61
    64 65 72 3E 3C 52 65 71 75 65 73 74 53 65 72 76 65
    72 56 65 72 73 69 6F 6E 20 56 65 72 73 69 6F 6E 3D
    22 45 78 63 68 61 6E 67 65 32 30 31 30 5F 53 50 31
    22 20 78 6D 6C 6E 73 3D 22 68 74 74 70 3A 2F 2F 73
    63 68 65 6D 61 73 2E 6D 69 63 72 6F 73 6F 66 74 2E
    63 6F 6D 2F 65 78 63 68 61 6E 67 65 2F 73 65 72 76
    69 63 65 73 2F 32 30 30 36 2F 74 79 70 65 73 22 2F
    3E 3C 2F 73 3A 48 65 61 64 65 72 3E 3C 73 3A 42 6F
    64 79 3E 3C 52 65 73 6F 6C 76 65 4E 61 6D 65 73 20
    52 65 74 75 72 6E 46 75 6C 6C 43 6F 6E 74 61 63 74
    44 61 74 61 3D 22 74 72 75 65 22 20 43 6F 6E 74 61
    63 74 44 61 74 61 53 68 61 70 65 3D 22 49 64 4F 6E
    6C 79 22 20 78 6D 6C 6E 73 3D 22 68 74 74 70 3A 2F
    2F 73 63 68 65 6D 61 73 2E 6D 69 63 72 6F 73 6F 66
    74 2E 63 6F 6D 2F 65 78 63 68 61 6E 67 65 2F 73 65
    72 76 69 63 65 73 2F 32 30 30 36 2F 6D 65 73 73 61
    67 65 73 22 3E 3C 55 6E 72 65 73 6F 6C 76 65 64 45
    6E 74 72 79 3E 43 6C 65 62 65 72 3C 2F 55 6E 72 65
    73 6F 6C 76 65 64 45 6E 74 72 79 3E 3C 2F 52 65 73
    6F 6C 76 65 4E 61 6D 65 73 3E 3C 2F 73 3A 42 6F 64
    79 3E 3C 2F 73 3A 45 6E 76 65 6C 6F 70 65 3E 
    --------------------------------------------------
    Sending message        (id: 1): 
    <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope">
      <s:Header>
        <RequestServerVersion Version="Exchange2010_SP1" xmlns="http://schemas.microsoft.com/exchange/services/2006/types"/>
      </s:Header>
      <s:Body>
        <ResolveNames ReturnFullContactData="true" ContactDataShape="IdOnly" xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
          <UnresolvedEntry>Cleber</UnresolvedEntry>
        </ResolveNames>
      </s:Body>
    </s:Envelope>
    --------------------------------------------------
    Error occurred: 0x803D0000 - The input data was not in the expected format or did not have the expected value.
    --------------------------------------------------
    Error occurred: 0x0 - The format of the HTTP request was not supported by the server.
    --------------------------------------------------
    Error occurred: 0x0 - The server returned HTTP status code '415 (0x19F)' with text
    'Cannot process the message because the content type 'application/soap+xml;
    charset=utf-8; action="http://schemas.microsoft.com/exchange/services/2006/messages/ResolveNames"'
    was not the expecte
    --------------------------------------------------
    Error occurred: 0x0 - There was an error communicating with the endpoint at 'https://gpe-exc2k10/EWS/Exchange.asmx'.
    --------------------------------------------------
    WsCall API failed by 0x803D0000
    --------------------------------------------------

    (*) Microsoft Exchange 2010 SP3 with Update Rollup 7

    Thursday, March 5, 2015 1:32 PM

Answers

  • I've never tried that particular API to do this before, so I'm not sure how to make it work. If you can specify the content type it would probably work.
    Thursday, March 5, 2015 2:00 PM
    Moderator

All replies

  • I've never tried that particular API to do this before, so I'm not sure how to make it work. If you can specify the content type it would probably work.
    Thursday, March 5, 2015 2:00 PM
    Moderator
  • Thank you for the tip. I was using SOAP 1.2. After changing to SOAP 1.1 it worked fine.

    WS_ENVELOPE_VERSION soapVersion = WS_ENVELOPE_VERSION_SOAP_1_1;

    Thanks and regards,
    Josue

    Thursday, March 5, 2015 2:35 PM