IBM webMethods Hybrid Integration

IBM webMethods Hybrid Integration

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  Invoking web service through Developer

    Posted Tue October 11, 2005 08:03 PM

    I am testing web service integration with SiebleOnDemand.com. I was able to send an Account to Siebel’s web service with very litte effort from my laptop (IS and Developer running locally).

    When I tried to send the SOAPRequest from my dev server (IS running on a server, Developer client running on my laptop), I got a strange error about SOAPAction being incorrect. It was a strange error because I can see I am sending the exact same SOAPAction in my dev environment as I am sending from my laptop.

    I ran the org.apache.soap.util.net.TcpTunnelGui so I could see the SOAPRequest and SOAPResponse. When I ran the process using local instance of Developer w/ remote IS, and tunneled the request through TcpTunnelGui on my local machine, it worked!

    I don’t get it. Does anyone know why this is?


    #API-Management
    #soa
    #webMethods


  • 2.  RE: Invoking web service through Developer

    Posted Wed October 12, 2005 01:26 AM

    Chris,

    That does seem a bit weird. In theory, sending soap message A to service B should always produce the same results, regardless of what client or server sent the message.

    Two quick things to check: 1) can you run a diff on the two soap request messages and confirm that they are, in fact, the same 2) are you using the same user credentials on both your development server and your laptop.

    Most web services implementations no longer require SoapAction. IS still has it around for backward compatibility. In most cases you can set it to null and the service will still work correctly. However, some implementations are picky and still require a specific value. I’m not sure how SiebelOnDemand.com works.

    Mark


    #soa
    #API-Management
    #webMethods


  • 3.  RE: Invoking web service through Developer

    Posted Wed October 12, 2005 01:11 PM

    Thanks, Mark.

    I ran a diff yesterday and I saw the SOAPAction was the same on both requests. It got me thinking about web filters like websense. I know our security dept is running websense here. Do these tools replace urls and paths that contain suspicious content with values like “?”?


    #webMethods
    #soa
    #API-Management


  • 4.  RE: Invoking web service through Developer

    Posted Wed October 12, 2005 02:14 PM

    I’m not sure that Websense would mangle your message, but it is worth checking with your security folks. How are you getting the endpoint address in the service that is sending the soap request? From your dev box you would be sending to localhost (through TcpTunnelGui). How are you sending from the second server?

    Mark


    #soa
    #webMethods
    #API-Management


  • 5.  RE: Invoking web service through Developer

    Posted Thu October 13, 2005 01:08 PM

    Mark,
    I ran two tests in order to determine the source of the error. The first time I invoked the service, I left the SOAPAction value just as it was when I created the web service connector (document/urn:crmondemand/ws/account/10/2004:AccountInsert). Siebel on demand reported the following error:
    <?xml><soap-env:envelope><soap-env:body><soap-env:fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>SOAPAction '<?>' is of invalid format: SOAPAction should be of the form "rpc/operationName" or "document/operationName".(SBL-EAI-08006)</faultstring><detail><siebelf:errorstack><siebelf:error><siebelf:errorsymbol></siebelf:errorsymbol><siebelf:errormsg>SOAPAction '<?>' is of invalid format: SOAPAction should be of the form "rpc/operationName" or "document/operationName".(SBL-EAI-08006)</siebelf:errormsg></siebelf:error></siebelf:errorstack></detail></soap-env:fault></soap-env:body></soap-env:envelope>

    Next, I delimited the SOAPAction value with double quotes (“document/urn:crmondemand/ws/account/10/2004:AccountInsert”). Everything worked fine.

    Thanks for the good feedback, Mark. This has been a valuable learning experience.

    BTW - I opened an OLD book of mine, “Programming Web Services with SOAP”, and found the following under “Contentious Issues”:
    “The W3C working group that is standardizing SOAP is leaning towards deprecating the SOAPAction header in the next version of the protocol.” Since this book was printed in 2002, this might already be the case.


    #API-Management
    #webMethods
    #soa