This discussion is archived
8 Replies Latest reply: Jul 3, 2012 3:05 AM by 947167 RSS

SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.

942695 Newbie
Currently Being Moderated
Hi everybody!

I am trying to make a request (SOAPAction UserQueryPage) to this service, but I am facing always this error:

SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.

I am using the HttpURLConnection class in Java, because of some reasons.

I have a successful login to this service, but after this, trying to use this sessionId I cannot do anything but logoff.

Of course, I have tried many combinations with the message header.

One of these was:

conn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
conn.setRequestProperty("Content-Length", 786);
conn.setRequestProperty("SOAPAction", "document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage");

The server reads this header and sends me back as an error, this is not a valid SOAPAction header.

What is wrong?

Can anybody suggest how to fix this problem?

Thanks and Regards,
Laszlo
  • 1. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    805445 Newbie
    Currently Being Moderated
    Can you dump the XML that you are sending with the header?
  • 2. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    583340 Explorer
    Currently Being Moderated
    You might want to look at the line where you are setting the SOAPAction header. I believe the contents of the header must be surrounded by quotation marks in the actual request. For example:

    SOAPAction: "document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage"

    If I'm reading your code correctly, you are actually sending this:

    SOAPAction: document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage


    You may need to escape the quotation marks to resolve the issue.

    conn.setRequestProperty("SOAPAction", "\"document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage\"");
  • 3. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    942695 Newbie
    Currently Being Moderated
    Hi Hodi,

    I've just tried your idea:
    conn.setRequestProperty("SOAPAction", "\"document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage\"");
    and I got this
    Query response code = 500
    Query response mess = Internal Server Error
    <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring>Ungültiger Wert &apos;%&apos; für Eigenschaft &apos;NamedSearchSpec&apos; definiert(SBL-EAI-04388)</faultstring><detail><siebelf:siebdetail xmlns:siebelf="http://www.siebel.com/ws/fault"><siebelf:logfilename>OnDemandServicesObjMgr_enu_88381.log</siebelf:logfilename><siebelf:errorstack><siebelf:error><siebelf:errorcode>(SBL-EAI-04388)</siebelf:errorcode><siebelf:errorsymbol>IDS_ERR_EAI_SA_MISC_PROP_VALUE</siebelf:errorsymbol><siebelf:errormsg>Ungültiger Wert &apos;%&apos; für Eigenschaft &apos;NamedSearchSpec&apos; definiert(SBL-EAI-04388)</siebelf:errormsg></siebelf:error></siebelf:errorstack></siebelf:siebdetail></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

    Laszlo
  • 4. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    942695 Newbie
    Currently Being Moderated
    Hi,
    Here it is:

    The message header:
    Content-Type text/xml; charset=UTF-8
    Content-Length 786
    SOAPAction document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage

    The message itself:
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:int="urn:crmondemand/ws/ecbs/user/10/2004"
    xmlns:ns2="urn:/crmondemand/xml/User/Query"
    xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <SOAP-ENV:Header>
    <wsse:Security>
    <wsse:UsernameToken>
    <wsse:Username>user</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">xxxx</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
    <int:UserQueryPage_Input>
    <int:NamedSearchSpec>%</int:NamedSearchSpec>
    <ns2:ListOfUser>%</ns2:ListOfUser>
    </int:UserQueryPage_Input>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
  • 5. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    805445 Newbie
    Currently Being Moderated
    As hody mentioned, you need to add a pair of quotes ' " ' around the soap action

    yours.

    SOAPAction document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage


    to

    SOAPAction "document/urn:crmondemand/ws/ecbs/user/10/2004:UserQueryPage"

    this works for me.

    POST https://secure-ausomxala.crmondemand.com/Services/Integration HTTP/1.1
    Accept-Encoding: gzip,deflate
    Content-Type: text/xml;charset=UTF-8
    SOAPAction: "document/urn:crmondemand/ws/ecbs/user/:UserQueryPage"
    User-Agent: Jakarta Commons-HttpClient/3.1
    Host: secure-ausomxala.crmondemand.com
    Content-Length: 1101

    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:user="urn:crmondemand/ws/ecbs/user/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
    xmlns:quer="urn:/crmondemand/xml/User/Query">
    <soapenv:Header>
    <wsse:Security>
    <wsse:UsernameToken>
    <wsse:Username>username</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">password</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
    <user:UserQueryPage_Input>
    <quer:ListOfUser pagesize="100" startrownum="1">
    <quer:User>
    <quer:FirstName ></quer:FirstName>
    <quer:LastName ></quer:LastName>
    </quer:User>
    </quer:ListOfUser>
    </user:UserQueryPage_Input>
    </soapenv:Body>
    </soapenv:Envelope>
  • 6. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    583340 Explorer
    Currently Being Moderated
    You should review the web service documentation available through the CRM On Demand training and support center. Your web service query is not valid because you are attempting to pass "%" as NamedSearchSpec when you should provide a valid named search or omit the NamedSearchSpec tag entirely. Also, passing "%" for the ListOfUsers tag is not valid. The web service documentation goes into some detail on how to build valid queries for use with CRM On Demand.
  • 7. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    942695 Newbie
    Currently Being Moderated
    Hi Hody, hi runndn2

    Thanks a lot for your help, now it works fine.

    Have a nice day,
    Laszlo
  • 8. Re: SBL-ODU-01007 The HTTP request did not contain a valid SOAPAction header.
    947167 Newbie
    Currently Being Moderated
    I have your buddy.. find your solution on this site.......
    custom software

    Edited by: 944164 on Jul 3, 2012 3:04 AM

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points