How to debug web service call from ESP process ?

Posted by Admin on 22-Sep-2008 07:32

Hi all,

I'm having problems when calling web service over HTTPS from ESP Process.

Can I debug this kind of processes ? I would like to see, what kind of request is going to the web service but when I activated the trace in that process, nothing comes to the console. How can I know is the request gone to the webservice or does it even go there ? And what the sonic does to the request or response when calling web services or does it do anything ?

In my case there is customerId in the header and I don't have any idea what went wrong... Please help !

Here is the exception:

Fault String: retrieveCustomerInformation: 1030: Request must include customerId information within the header., Fault Code: Client<[CDATA[com.sonicsw.xqimpl.invkimpl.wsif.providers.common.UncheckedWSInvocationException: Fault String: retrieveCustomerInformation: 1030: Request must include customerId information within the header., Fault Code: Client

at com.sonicsw.xqimpl.invkimpl.wsif.providers.axissoap.AxisFaultExceptionCreator.createException(AxisFaultExceptionCreator.java:100)

at com.sonicsw.xqimpl.invkimpl.wsif.providers.axissoap.ESBWSIFOperation_ApacheAxis.invokeInvocation(ESBWSIFOperation_ApacheAxis.java:930)

at com.sonicsw.xqimpl.invkimpl.wsif.providers.axissoap.ESBWSIFOperation_ApacheAxis.invokeRequestResponseOperation(ESBWSIFOperation_ApacheAxis.java:302)

at com.sonicsw.xqimpl.invkimpl.wsif.providers.common.BaseEsbWsifOperation.invokeRequestResponseOperation(BaseEsbWsifOperation.java:289)

at com.sonicsw.xqimpl.invkimpl.wsif.providers.common.BaseEsbWsifOperation.executeRequestResponseOperation(BaseEsbWsifOperation.java:338)

at com.sonicsw.xqimpl.invkimpl.ESBOperationImpl.call(ESBOperationImpl.java:195)

at com.sonicsw.xqimpl.service.wsinvk.WSInvocationScriptObject$WSInvocationScriptCommand.execute(WSInvocationScriptObject.java:498)

at com.sonicsw.xqimpl.script.Command.executeScriptCommand(Command.java:319)

at com.sonicsw.xqimpl.script.Command.execute(Command.java:275)

at com.sonicsw.xqimpl.script.ScriptEngine.executeCommand(ScriptEngine.java:66)

at com.sonicsw.xqimpl.service.wsinvk.WSInvocationComponent.service(WSInvocationComponent.java:37)

at com.sonicsw.xqimpl.service.debug.DebugServiceInterceptor.intercept(DebugServiceInterceptor.java:118)

at com.sonicsw.xqimpl.service.XQServiceChain$XQInterceptorServiceWrapper.intercept(XQServiceChain.java:481)

at com.sonicsw.xqimpl.service.XQServiceChain$XQInterceptorServiceWrapper.service(XQServiceChain.java:470)

at com.sonicsw.xqimpl.service.XQServiceChain.service(XQServiceChain.java:151)

at com.sonicsw.xqimpl.service.ServiceMessageHandler.callService(ServiceMessageHandler.java:413)

at com.sonicsw.xqimpl.service.ServiceMessageHandler.handleMessage(ServiceMessageHandler.java:182)

at com.sonicsw.xqimpl.service.ProcessMessageHandler.doHandleMessage(ProcessMessageHandler.java:308)

at com.sonicsw.xqimpl.service.ProcessMessageHandler.handleMessage(ProcessMessageHandler.java:90)

at com.sonicsw.xqimpl.service.XQDispatcher.onMessage(XQDispatcher.java:422)

at com.sonicsw.xqimpl.service.MessageSendingHelper.sendToService(MessageSendingHelper.java:328)

at com.sonicsw.xqimpl.service.MessageSendingHelper.sendToAddress(MessageSendingHelper.java:76)

at com.sonicsw.xqimpl.service.MessageSendingHelper.sendToProcess(MessageSendingHelper.java:827)

at com.sonicsw.xqimpl.service.MessageSendingHelper.sendToProcess(MessageSendingHelper.java:845)

at com.sonicsw.xqimpl.service.MessageSendingHelper.sendToAddress(MessageSendingHelper.java:80)

at com.sonicsw.xqimpl.service.MessageSendingHelper.sendEnvelopes(MessageSendingHelper.java:951)

at com.sonicsw.xqimpl.service.XQDispatcher.onMessage(XQDispatcher.java:493)

at com.sonicsw.xqimpl.endpoint.container.EndpointContextContainer.onMessage(EndpointContextContainer.java:84)

at com.sonicsw.xq.connector.jms.JMSEndpoint$JMSEndpointListener.onMessage(JMSEndpoint.java:570)

at progress.message.jimpl.Session.deliver(Session.java:2998)

at progress.message.jimpl.Session.run(Session.java:2390)

at progress.message.jimpl.Session$SessionThread.run(Session.java:2775)

]]></stackTrace>

</exception>

All Replies

Posted by dmillman on 24-Sep-2008 14:07

You can put breakpoints in esbws file by expanding 'Evaluation Steps' allowing breakpoints at:

Map to input WSDL parameters

Receive WSDL response

Map to Response Interface Parameters.

You can also map the RawSOAPRequest and RawSOAPResponse parameters to various message parts to determine exactly what is being sent on the wire to/from the invoked web-service.

Hope this helps

David

Posted by Admin on 26-Sep-2008 04:22

If I'm calling web service from esb process do I have to make esbws -file ? Isn't it for esb:s web services ?

This thread is closed