on 01-11-2014 10:04 AM
hello all,
I have a scenario to consume a webservice provided by TIBCO.
A end to end scenario is configured in TIBCO (ws-TIBCO-ws). The WSDL file ganerated from TIBCO system is provided to me to consume in SAP PI.
TIBCO generated WSDL will be in a format (Type, Service, Binding, Port, Message). For SAP system to consume a webservice, WSDL format should be (Type, Message, Binding, Port, Service). So i changed the format and imported into External Definitions in ESR and configured the SYNCHRONOUS end-to-end scenario(saop-PI-soap) in SAP PI. I have generated a wsdl from sender agreement and tested it using SOUP UI. I have also provided the SOAP ACTION in the receiver communication channel.
In SOAP UI response it throws following error.
<!--see the documentation-->
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>Server Error</faultstring>
<detail>
<s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
<context>XIAdapter</context>
<code>ADAPTER.JAVA_EXCEPTION</code>
<text>com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: XIAdapterFramework:GENERAL:com.sap.engine.interfaces.messaging.api.exception.MessagingException: SOAP: Response message contains an errorXIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Server did not recognize the value of HTTP Header SOAPAction: .
at com.sap.aii.adapter.soap.web.SOAPHandler.processSOAPtoXMB(SOAPHandler.java:746)
at com.sap.aii.adapter.soap.web.MessageServlet.doPost(MessageServlet.java:505)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)
at com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:126)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:432)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:278)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)</text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
Also let me know whether we can consume a TIBCO generated WSDL in SAP PI or not (because first we will hit TIBCO endpoint url which in turn internally hits the target system url from TIBCO )
If this is possible, Please provide your valuable inputs
Regards
Hi Sushant,
Could you please provide the audit log of adapter ?
Kind regards,
Ricardo Viana.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Sushant,
The problem could be about the connectivity, because the socket has a timeout exception. You must assure that your URL is right contacting with the endpoint administrators, if it is right contact with your basis team in order to assure via telnet or similar that there isn't any firewall that block the connection.
Regards
Hi Sushant
From the log ,I can see that the web-service is getting socket exception which is only occurs when there is a issue on network connection.
Please try to ping the web service server from PI and see you are getting any response or not.
Also check with basis team whether there are any firewall issues or not.
Thanks for post Sushant,
It's a simples HTTP post msg right ? There isnt HTTPS + SSL ?
I got this same issue here in Brazil with SEFAZ, but it's HTTP+SSL.
Anyway check this note below, maybe you need upgrade the version of SAP PI BASIS Component, where there are all adapters used in SAP PI:
1405895 - Large messages from SOAP receiver channel fail
Not exclusive for large messages, NF-e it's something about 12kb, I just did and update of adapter and fix issue of "Connection reset by peer" or "Connection closed" or "Connection reset".
Regards,
Ricardo Viana.
Message was edited by: Ricardo Viana
Hi Sushant,
As per my understanding,, the server is sending a fault message saying that it is not able to understand the SOAP Action mentioned in your request. did you provide correct soap Action in the request?
regards,
Gavaksh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
HI Sushant,
According with Jörg statement probably the endpoint is sending a error page or similar. When i have this problem i usually do a little trick to know what exactly PI is receiving. I set the SOAP receiver with Do Not Use SOAP envelope, therefore i need to construct with XSL previously the SOAP tags but when I do my test I can see in the monitoring what PI is receiving exactly and I can act according I check in the logs.
Regards.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Sushant,
looks like your call was successful and your PI doesn't understand the answer. Have you tried to analyze what exactly the server is sending back to you? If you don't see the payload or the SOAP request in AAE monitoring, try to use XPI_Inspector logs and trace HTTP communication. This should give you a clue about what is happening here.
Alternatively, you can ask the server side whether they can send you a file with their response message.
Regards,
Jörg
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
92 | |
11 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.