Problem with SOAP adapter
hi,
I am calling an external webservice which has a string parameter.I am polling my table and routing it to the SOAP adapter.It worked well until yesterday and suddenly today it is throwing the below error.Can any body help me? below is the complete error stack
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body><env:Fault xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>env:ESBMessageProcessingFailed</faultcode><detail><EventName>ORAVCCSSYS.SOAPVCCS1.StatusUpdate</EventName><Cause>An unhandled exception has been thrown in the ESB system. The exception reported is: "oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: oracle.j2ee.ws.saaj.ContentTypeException: Not a valid SOAP Content-Type: text/html
at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1717)
at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeRequestResponseOperation(WSIFOperation_JaxRpc.java:1463)
at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.executeRequestResponseOperation(WSIFOperation_JaxRpc.java:1185)
at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(WSIFInvoker.java:507)
at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:430)
at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:447)
at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(OutboundAdapterService.java:184)
at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(OutboundAdapterService.java:112)
at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(InitialEventDispatcher.java:106)
at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:85)
at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1416)
at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.raiseEvent(EventOracleSoapProvider.java:314)
at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.processMessage(EventOracleSoapProvider.java:187)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:956)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:466)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(WSIFInvoker.java:539)
at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:430)
at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:447)
at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(OutboundAdapterService.java:184)
at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(OutboundAdapterService.java:112)
at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(InitialEventDispatcher.java:106)
at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:85)
at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1416)
at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.raiseEvent(EventOracleSoapProvider.java:314)
at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.processMessage(EventOracleSoapProvider.java:187)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:956)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:466)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.collaxa.thirdparty.apache.wsif.WSIFException: exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: oracle.j2ee.ws.saaj.ContentTypeException: Not a valid SOAP Content-Type: text/html
at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1717)
at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeRequestResponseOperation(WSIFOperation_JaxRpc.java:1463)
at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.executeRequestResponseOperation(WSIFOperation_JaxRpc.java:1185)
at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(WSIFInvoker.java:507)
... 26 more
</Cause></detail></env:Fault></env:Body></env:Envelope>
i have re deployed the service in the ESB and now it is working fine. I really did not understand whats the root cause of the error.
Can anyone please throw some light on this?
thanks
Similar Messages
-
Problem with SOAP Adapter receiver not receiving the proper string
Hi friends
I have a very simple scenario as follows using SOAP Syncronous Call
SENDING SCENARIO
================
ExternalClient --> SOAP ADAPTER --> XI -> RFC ADAPTER --> ZBAPI
RECEIVING SCENARIO
==================
ZBAPI --> RFC ADAPTER --> XI --> SOAP ADAPTER --> ExternalClient
Here External Client is sending a search ID and ZBAPI searches for that record and send the FirstName and LastName.
I am using external Definitions in XSD format as follows.
INPUT XSD is
=========================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://cincom.com/xi/socrates/customerSearch" targetNamespace="http://cincom.com/xi/socrates/customerSearch">
<xsd:element name="ZBAPI_GET_NAME">
<xsd:complexType>
<xsd:all>
<xsd:element name="ID" type="xsd:integer" minOccurs="0" />
</xsd:all>
</xsd:complexType>
</xsd:element>
</xsd:schema>
===========================================
Reciving XSD file has
==============================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:socrates.cincom.com" targetNamespace="urn:socrates.cincom.com">
<xsd:element name="ZBAPI_GET_NAME_RESPONSE">
<xsd:complexType>
<xsd:all>
<xsd:element name="ADDRESSDATA" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="FNAME" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LNAME" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:all>
</xsd:complexType>
</xsd:element>
</xsd:schema>
=========================================================
I HAVE TESTED THE ZBAPI AND IT WORKS WELL ON ITS OWN. ALSO I HAVE TESTED THAT THE MESSAGE SENT FROM OUTSIDE CLIENT IS REACHING BAPI. HOWEVER WHEN I GOTO 'SXMB_MONI' AND CHECK THE
XML STRING THAT THE RECIEVER IS GETTING, I SEE JUST THE FOLLOWING TWO LINES
===================================
<?xml version="1.0" encoding="UTF-8" ?>
<ns1:ZBAPI_GET_NAME_RESPONSE xmlns:ns1="urn:socrates.cincom.com" />
======================================
IF YOU NEED ANY FURTHER INFO, PLEASE LET ME KNOW.
HOPE SOME ONE CAN GUIDE ME WITH THIS PROBLEM.
THANKS IN ADVANCE
RAMRam
Can you pls. confirm whether the mapping of your XSD fields & BAPI fields are in same sequence. I mean hierarchy is same or not.
Just to verify, as you said you are using Sync scenario that means you are using ONE Sender Soap & ONE Reciever RFC adapter.
Regards
Lalit -
Problems with SOAP Adapter/Interface
Hi Experts,
we currently try and experiment with XI 3.0 Stack 09 and the SOAP adapter respectively.
We started with a simple interface (foo..., see wsdl attachment) that we want to provide by XI.
All configurations (SLD, Integration Repository, Integration Directory) should have been done accordingly as we suppose, similar to other szenarios we have already implemented.
When we send a SOAP request based on a generated wsdl to XI we get the exception at the bottom of this text, containing e.g.
com.sap.aii.messaging.srt.BubbleException: error during conversion [null "null"];
com.sap.aii.messaging.util.XMLScanException: Parsing an empty source. Root element expected!
For sending the SOAP message we used XMLSpy.
Did someone have similar problems or can give us an working WSDL example, or some hint?
Thanks in advance,
Klaus Lukas
foo.wsdl
<?xml version="1.0" encoding="ISO-8859-1"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:p1="urn://poreceive.xi.pse.siemens.com" targetNamespace="urn://poreceive.xi.pse.siemens.com" name="foo_out_sync">
<wsdl:types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn://poreceive.xi.pse.siemens.com" targetNamespace="urn://poreceive.xi.pse.siemens.com">
<xsd:element name="foo" type="foo_DT"/>
<xsd:complexType name="foo_DT">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fe0bb241d2a011d9cd15e9729ee2f568
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="item" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fe0bb240d2a011d9acede9729ee2f568
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="foo">
<wsdl:part name="foo" element="p1:foo"/>
</wsdl:message>
<wsdl:portType name="foo_out_sync">
<wsdl:operation name="foo_out_sync">
<wsdl:input message="p1:foo"/>
<wsdl:output message="p1:foo"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="foo_out_syncBinding" type="p1:foo_out_sync">
<soap:binding xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="foo_out_sync">
<wsdl:input>
<soap:body xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="foo_out_syncService">
<wsdl:port name="foo_out_syncPort" binding="p1:foo_out_syncBinding">
<soap:address location="http://xxxxxxxx:8000/XISOAPAdapter/MessageServlet?channel=:Foo_SOAP_Service:SOAP_Foo_out&version=3.0&Sender.Service=Foo_SOAP_Service&Interface=urn%3A%2F%2Fporeceive.xi.pse.siemens.com%5Efoo_out_sync" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
soap message incl. error
<?xml version="1.0"?>
<!-- see thedocumentation -->
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>error during
conversion</faultstring>
<detail>
<s:SystemError
xmlns:s="http://sap.com/xi/WebService/xi2.0">
<context>XIAdapter</context>
<code>XMLScanException</code>
<text><![CDATA[
com.sap.aii.af.mp.module.ModuleException
at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process
(XISOAPAdapterBean.java:697)
at
com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl3.process
(ModuleLocalLocalObjectImpl3.java:103)
at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process
(ModuleProcessorBean.java:221)
at
com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0.process
(ModuleProcessorLocalLocalObjectImpl0.java:103)
at com.sap.aii.af.mp.soap.web.MessageServlet.doPost
(MessageServlet.java:543)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java:853)
at
com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet
(HttpHandlerImpl.java:385)
at
com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleReques
t(HttpHandlerImpl.java:263)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet
(RequestAnalizer.java:340)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet
(RequestAnalizer.java:318)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebConta
iner(RequestAnalizer.java:821)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.handle
(RequestAnalizer.java:239)
at com.sap.engine.services.httpserver.server.Client.handle
(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request
(Processor.java:147)
at
com.sap.engine.core.service630.context.cluster.session.ApplicationSessio
nMessageListener.process(ApplicationSessionMessageListener.java:37)
at
com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner
.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run
(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute
(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run
(SingleThread.java:162)
Caused by: com.sap.aii.messaging.srt.BubbleException: error during
conversion [null "null"]; nested exception caused by:
com.sap.aii.messaging.util.XMLScanException: Parsing an empty source.
Root element expected!
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.onResponseToWS
(XMBWebServiceExtension.java:936)
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.invokeOnResponse
(XMBWebServiceExtension.java:602)
at com.sap.aii.messaging.srt.ExtensionBubble.onMessage
(ExtensionBubble.java:58)
at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process
(XISOAPAdapterBean.java:576)
... 20 more
Caused by: com.sap.aii.messaging.util.XMLScanException: Parsing an
empty source. Root element expected!
at com.sap.aii.messaging.util.StreamXMLScannerImpl.open
(StreamXMLScannerImpl.java:104)
at com.sap.aii.messaging.mo.DefaultItem.setData
(DefaultItem.java:294)
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.makeItemFromPayload
(XMBWebServiceExtension.java:972)
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.onResponseToWS
(XMBWebServiceExtension.java:879)
... 23 more
]]></text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>Hi Klaus
In your wsdl file the soap address tag (given below)
<b><soap:address location="http://xxxxxxxx:8000/XISOAPAdapter/MessageServlet?channel=:Foo_SOAP_Service:SOAP_Foo_out&version=3.0&Sender.Service=Foo_SOAP_Service&Interface=urn%3A%2F%2Fporeceive.xi.pse.siemens.com%5Efoo_out_sync" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/></b>
is to be edited as
<b><soap:address location="http://xxxxxxxx:50000//XISOAPAdapter/MessageServlet?channel=:Foo_SOAP_Service:SOAP_Foo_out" /></b>
because the soap address format should be like :
<i>http://host:port/XISOAPAdapter/MessageServlet?channel=party:service:channel</i>
For more information :
http://help.sap.com/saphelp_nw04/helpdata/en/0d/5ab43b274a960de10000000a114084/frameset.htm
Hope this will be helpful.
Regards
Suraj -
Hi!
I need to implement the following scenario:
In SAP an user exit calls an RFC which uses a TCP/IP Connection (SM59) to the XI and sends data over this connection to it. The XI connects via a SOAP adapter my server program and sends the data in a soap stream to this server.
This works sometimes ok and sometimes not.
The status for those messages in the XI is "scheduled for outbound processing" with a little black arrow pointing to the right.
The error message in the Runtime Workbench for such a job is:
SOAP: request message entering the adapter
SOAP: call failed
SOAP: sending a delivery error ack ...
SOAP: sent a delivery error ack
How can I find out what the problem is?
Thanks,
KonradHi,
When a message is scheduled for outbound processing, it is normally sent automatically.
does it always sit at this status or does it change after a while ?
If it is an issue with the connectivity from the Integration Server to the Adapter Framework you would get a different error message.
If it is an issue with connectivity from the SOAP adapter to your target, you would also get a different error - it is likely to be shown as an outright failure. Plus the error shown in the message is likely to be
"com.sap.aii.af.ra.ms.api.DeliveryException: java.net.ConnectException: Connection refused"
Hope this helps.
i think you need to get Basis involved to see why messages are not getting sent from the rfc queues automatically all the time.
Cheers
Colin. -
Another problem with SOAP sender
I have another problem with SOAP scenario in a different environment (PI 7.0) from my earlier post.
Scenario:
Soap Sender -> PI -> Soap Receiver
Following steps from GoogleSearch SOAP scenario in the SAP How-to Guide for SAP NetWeaver '04 entitled: "How To... Use the XI 3.0 SOAP Adapter" version 1.00 - March 2006.
I have loaded in the api.google.com/GoogleSearch.wsdl file as an External definition and created the SOAP receiver as described in the How-to guide. It takes a doGoogleSearch as input and sends back a doGoogleSearchResponse (Sync Call).
Note that the GoogleSearch.wsdl contains a complex type ResultElementArray that refers to ResultElement\[\], and a DirectoryCategoryArray that refers to DirectoryCategory\[\]. The ResultElement and DirectoryCategory types are defined in the GoogleSearch.wsdl file.
Problem One:
The generated WSDL for the SOAP sender contains the ResultElementArray and DirectoryCategoryArray types but it DOES NOT contain the required ResultElement and DirectoryCategory types. XML Spy complains that this WSDL is not valid because the type ResultElement\[\] is not defined.
Problem Two:
I generate a SOAP message in XML Spy, provide values for the doGoogleSearch fields, and send. In SXMB_MONI, the SOAP sender payload contains only the <key> value from the doGoogleSearch message body, i.e. <part name="key" type="xsd:string" />
The other doGoogleSearch fields seem to be missing, i.e.
<part name="q" type="xsd:string" />
<part name="start" type="xsd:int" />
<part name="maxResults" type="xsd:int" />
<part name="filter" type="xsd:boolean" />
<part name="restrict" type="xsd:string" />
<part name="safeSearch" type="xsd:boolean" />
<part name="lr" type="xsd:string" />
<part name="ie" type="xsd:string" />
<part name="oe" type="xsd:string" />
Does anyone know why:
(1) PI/XI seems to leave out the ResultElement and DirectoryCategory types from the SOAP sender service WSDL file?
(2) The doGoogleSearch message seen in SXMB_MONI contains only the first <key> field, and not the other fields?
Thanks for any help with this.I have another problem with SOAP scenario in a different environment (PI 7.0) from my earlier post.
Scenario:
Soap Sender -> PI -> Soap Receiver
Following steps from GoogleSearch SOAP scenario in the SAP How-to Guide for SAP NetWeaver '04 entitled: "How To... Use the XI 3.0 SOAP Adapter" version 1.00 - March 2006.
I have loaded in the api.google.com/GoogleSearch.wsdl file as an External definition and created the SOAP receiver as described in the How-to guide. It takes a doGoogleSearch as input and sends back a doGoogleSearchResponse (Sync Call).
Note that the GoogleSearch.wsdl contains a complex type ResultElementArray that refers to ResultElement\[\], and a DirectoryCategoryArray that refers to DirectoryCategory\[\]. The ResultElement and DirectoryCategory types are defined in the GoogleSearch.wsdl file.
Problem One:
The generated WSDL for the SOAP sender contains the ResultElementArray and DirectoryCategoryArray types but it DOES NOT contain the required ResultElement and DirectoryCategory types. XML Spy complains that this WSDL is not valid because the type ResultElement\[\] is not defined.
Problem Two:
I generate a SOAP message in XML Spy, provide values for the doGoogleSearch fields, and send. In SXMB_MONI, the SOAP sender payload contains only the <key> value from the doGoogleSearch message body, i.e. <part name="key" type="xsd:string" />
The other doGoogleSearch fields seem to be missing, i.e.
<part name="q" type="xsd:string" />
<part name="start" type="xsd:int" />
<part name="maxResults" type="xsd:int" />
<part name="filter" type="xsd:boolean" />
<part name="restrict" type="xsd:string" />
<part name="safeSearch" type="xsd:boolean" />
<part name="lr" type="xsd:string" />
<part name="ie" type="xsd:string" />
<part name="oe" type="xsd:string" />
Does anyone know why:
(1) PI/XI seems to leave out the ResultElement and DirectoryCategory types from the SOAP sender service WSDL file?
(2) The doGoogleSearch message seen in SXMB_MONI contains only the first <key> field, and not the other fields?
Thanks for any help with this. -
Hi All
I am facing some problems with XI system. XI production server was restarted couple of days back. From that time, 1 file is not reaching its destination. When i go to communication channel monitoring, i see this message for all the communication channels with file adapter "No adapter registered for this channel".
But, communication channels with SOAP adapter are working fine, and the corresponding files are reaching its destinations. So, what should i do to rectify this probelm? Do we have to restart XI server onceagain? Is there anything pirticular, to be careful about, while restarting XI system?
Many Thanks in Advance
Chandra SekharHi Chandra shekar,
Plz try to do the following steps:
1)Try after restarting the Java Stack.
2)Try after SLD cache.
To clear the SLD cache, from the Integration Builder main menu, choose Environment ® Delete Cache for SLD Data.
Once we have deleted the cache for SLD data, accessing objects in the SLD may take longer than usual initially.
This will help you to find SP Level
http://help.sap.com/saphelp_nw2004s/helpdata/en/1f/c45b4211aac353e10000000a1550b0/frameset.htm
http://hostname:5/CPACache/refresh?mode=full
Regards,
Vinod. -
Problem with FTP Adapter in creating a new Folder
Hi all,
I have a requirement in which a BPEL process shud create a folder named as sysdate dynamically and write a
CSV file into that.(ex: PO/2010-03-09/PO_1.csv).I created a header variable for Oubound FTP adapter and
passing the file directory as concat('PO/',xp20:current-date(),'/') to outbound header directory variable.Problem is FTP
adapter is not creating the sysdate folder its says:1.check u have privileges 2.file name is too long....Blah....Blah.
But i have all the privileges for that user.If i manually create the sysdate folder the FTP adapter is placing the CSV
file.The same works fine with file adapter...but i need to use FTP since the FTP server can change in future.Seems to
be a problem with FTP adapter....can some one help.
Iam using SOA 10.1.3.4
Regards,
Edited by: 0racler on Mar 9, 2010 4:46 AM
Edited by: 0racler on Mar 9, 2010 5:49 AMany thoughts????
-
Hi
We r facing typical problem with file adapter.
Lets say there are 30 files to be processed by placing an copy in arichive folder by file adapter based on pooling
parameters.
All the 30 files are picked up and we can see the copies in archive folder.
But when we go to RWB and check the audit log,
there we could see only 25 files , the 5 files are missing.
no trace found therre about the 5 files.
This is happening only some times and not to all the files placed in the FTP. Later when the same file is placed back from the Archive folder to the Source folder, the file is being picked and processed succesfully.
unfortunately this is happening on Production server
Any pointers which could trouble shoot this issue.
Regards
shekar chandraHi,
Couple of thing which you can try....
1. Use EOIO QoS and check if you still face the issue.
Is some program or application writing files to the directory? If yes I would recommend the use of a temporary name to write the files and then rename them.
Sometimes when an external application connects via FTP and transfers the files...
The file could be picked up by the adapter poll even before the transfer of data is done.
Which is why you will find that the file is archived but there is no xml message created for the same in the Integration engine.
Try increasing the poll interval. This helps sometimes.
Regards,
Sidharth -
Problem with Lightning Adapter after update to IOS 8.1
Dear all,
last week I updated the Iphone 5S of my wife with IOS 8.1 since that time we can not connect the B&W Bowl via lighning adapter (Original Apple).
Before never any problem. I have the new Iphone 6 but IOS 8.02 and no any problem with same adapter to connect the B&W Bowl.
I also checked in my car same problem with IOS 8.1 we can not connect but with 8.02 no problem.
I contacted the Apple support and it looks it´s a problem with the new IOS 8.1.
Does anybody have the same problems with the connection to Docking Stations etc ?
best regards
Jensmeasure the speed with speedtest http://www.speedtest.net
and maybe contact your carrier -
HTTP 415 Unsupported Media Type with SOAP adapter ?
Hello All,
Iam getting HTTP 415 Unsupported Media Type with SOAP adapter error while executing the scenario.
i got one thread which have the solution. iam not getting exactly how to write message transform Bean.
HTTP 415 Unsupported Media Type with SOAP adapter trying to put SOAP header
Please tell me where i need to write the MessageTransformBean at sender adapter or receiver file adapter.
Thanks and regards,
chinnaHi Chinna,
Have you checked this
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Regards
Ramesh -
Prolog with soap adapter in PI
Dear All,
We run a scenario Proxy=>PI=>HTTP
The remote service accepts messages POSTed using either the form-encoded format (name, value pairs)
or the multi-part mime format which enables the files to be passed to the web service.
In both cases, the external service replies with a multi-part message.
We are going to use the SOAP adapter (plain HTTP does not support attachments)
with nosoap flagged.
What is best approach to add a prolog before the actual XML with SOAP adapter,
to simulate the form-encoded format?
Example :
USER=USER1&PASS=PASS1&DB=DB1
In the 2nd situation, how to create the different documents before the actual XML?
Example :
7d924f5b0464
Content-Disposition: form-data; name="USER"
USER1
7d924f5b0464
Content-Disposition: form-data; name="PASS"
PASS1
7d924f5b0464
Content-Disposition: form-data; name="DB"
DB1
Best regards,
KR,
LaurentDear All,
We run a scenario Proxy=>PI=>HTTP
The remote service accepts messages POSTed using either the form-encoded format (name, value pairs)
or the multi-part mime format which enables the files to be passed to the web service.
In both cases, the external service replies with a multi-part message.
We are going to use the SOAP adapter (plain HTTP does not support attachments)
with nosoap flagged.
What is best approach to add a prolog before the actual XML with SOAP adapter,
to simulate the form-encoded format?
Example :
USER=USER1&PASS=PASS1&DB=DB1
In the 2nd situation, how to create the different documents before the actual XML?
Example :
7d924f5b0464
Content-Disposition: form-data; name="USER"
USER1
7d924f5b0464
Content-Disposition: form-data; name="PASS"
PASS1
7d924f5b0464
Content-Disposition: form-data; name="DB"
DB1
Best regards,
KR,
Laurent -
Message Level Security with SOAP Adapter
Hi,
I need to use Message Level Security with my SOAP Adapter. Please let me know if anyone has done the same in the past?
What are the steps I would need to do? How can I use WSS based security in the SOAP Adapter?Hi,
Message-level security is recommended and sometimes a prerequisite for inter-enterprise communication.
It improves communication-level security by adding security features that are particularly important for inter-enterprise
Message-level encryption is required if message content needs to be confidential not only on the communication lines but also in intermediate message stores.
Refer
How to use Client Authentication with SOAP Adapter
XML Encryption Using Web Services Security in SAP NetWeaver XI
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f0650f56-7587-2910-7c99-e1b6ffbe4d50
http://help.sap.com/saphelp_nw04/helpdata/en/a8/882a40ce93185de10000000a1550b0/frameset.htm
Thanks
swarup -
Problem with SOAP receiver adapter? Please help!
Hi experts
I have the following scenario:
SAP R/3 -ABAP Proxy>XI--->SOAP --webservice
As you can see, I am sending data from R/3 system to XI via ABAP proxy. XI then sends data or calls a webservice via SOAP adapter.
When I test this scenario I am getting a error in the sxmb_moni that is,
"com.sap.aii.af.ra.ms.api.DeliveryException: TEXT/HTML; HTTP 504 Gateway Time-out"
I have checked the webservice url and it is working fine.
Can somebody tell me why am I getting this error message? How do I resolve this?
Thanks
GopalHi,
Can you please check the settings in Soap Adapter with Module Adapter setting with ModuleTranformBean parameters? There may be some problem. use HTTP Adapter and the message type 'HttpPostIn' to send as HTTP Post.
Also
There is the note 450226 gives an overview over error codes
Probably below solution may help you.........
As an administrator on your portal go to:
System Configuration > Service Configuration >applications
Under: com.sap.portal.ivs.httpservice > Services > Proxy
If any proxy settings are configured you may end up with the problem, so you need to set the "nonProxyHosts" to include the trex host.
regards
Aashish Sinha
PS : reward points if helpful -
Problem with SOAP 1.1 Format
Hello everyone.
I am use SAP XI SOAP 1.1 with WS-Security. At the end of the header of the message the tag <wsse:BinarySecurityToken> is repeating twice which causes a problem from the other receiving SOAP adapter (webMethods). Anyone knows how to fix this?
Sample:
</ds:KeyInfo>
</ds:Signature>
<wsse:BinarySecurityToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-
wss-wssecurity-utility-1.0.xsd" wsu:Id="sap-1" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-
200401-wss-soap-message-security-1.0#Base64Binary">MIIFSjCCBDKgAw
</wsse:BinarySecurityToken>
<wsse:BinarySecurityToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-
wss-wssecurity-utility-1.0.xsd" wsu:Id="sap-1" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-
200401-wss-x509-token-profile-1.0#X509v3" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-
200401-wss-soap-message-security-1.0#Base64Binary">MIIFSjCCBDKgAw
</wsse:BinarySecurityToken>
</wsse:Security>
</SOAP:Header>
Edited by: Baheej Awamy on Apr 13, 2009 9:09 AMHi Prateek,
I just receive the same note from SAP Active Global Support,
I am going to apply this note and hopefully resolve the issue. -
XSLT Problem with soap namespace
Hi there,
I have a problem transforming an XML doc with soap elements, using XSLT (Xalan).
Here's the input:
<?xml version = "1.0" encoding = "ISO-8859-1"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://www.ean.nl">
<testthis>123456</testthis>
</soap:Envelope>and here's the XSL:
<?xml version="1.0"?>
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" exclude-result-prefixes="soap">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="soap:Envelope">
<Orders>
<H01>
<xsl:value-of select="testthis"/>
</H01>
</Orders>
</xsl:template>
</xsl:transform>I expect to get something like:
<?xml version="1.0" encoding="UTF-8"?>
<Orders>
<H01>123456<H01>
<Orders>But instead I get:
<?xml version="1.0" encoding="UTF-8"?>
<Orders>
<H01/>
</Orders>I've tried a lot of things and I'm probably overseeing something stupid, but I'm stuck.
It seems as if anything without soap: namespace cannot be processed by my XSL (when I add it in the input XML and XSL it works).
Any help would be greatly appreciated.
Greetings,
ErikYes, I found it!
The following XSL for the same XML doc works!
<?xml version="1.0"?>
<xsl:transform xmlns:ean="http://www.ean.nl" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" exclude-result-prefixes="soap">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="soap:Envelope">
<Orders>
<H01>
<xsl:value-of select="ean:testthis"/>
</H01>
</Orders>
</xsl:template>
</xsl:transform>Thanks, you pointed me in the right direction :-)
Erik
Maybe you are looking for
-
Hi all, I am trying to create my ABAP web dynpro application. For which I have created a component. Now when I try to create a view in that component, the view is created successfully but the Layout tab of that view displays the following error: The
-
Error -3000 in Oracle Explorer View while trying to add connection. v. 10.2
I have been using Oracle 9.2 and it's cooresponding ODP.NET for ASP.NET web development. I am now started on a new project that is running on a 10g database. I figured I would try out the Visual Tools suite and get the benefit of using ODP.NET and th
-
I run Windows 7 on a Dell Laptop with i5 processor - SRS premium sound that works well except when using Firefox browser. Example of problem - listening to CNN news on TunedIn online Radio - volume cranked all the way up provides about 20% of the aud
-
RPD - Cannot obtain number of columns for the query result :Working with MS SQL 2012 schema
Hi All, I have created my warehouse in MS SQL 2012. For management purpose, I have created different schemas in SQL database In RPD, Physical layer, when i view data > I get error as [nQSError:16002] Cannot obtain number of columns for the query resu
-
Wrong java.library.path in Netbeans?
I write some java code and call native method with JNI, it does not work under netbeas, but work well in terminal. I try use System.out.println(System.getProperty("java.library.path")); to know what's wrong, i get two different output: netbeans: /usr