Error in SOAP Adapter because XML is big
<b>Hi guys! I have a SOAP Adapter (Sender) that works fine when the XML it receives is small. If the XML is big, this error happens:</b><br><br><br>
java.lang.NullPointerException; nested exception caused by:
java.lang.NullPointerException; nested exception caused by:
com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 6e, 74, 6f(:main:, row:1, col:3)(:main:, row=1, col=3) -> com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 6e, 74, 6f(:main:, row:1, col:3)
at com.sap.engine.lib.xml.parser.XMLParser.scanProlog(XMLParser.java:2785)
at com.sap.engine.lib.xml.parser.XMLParser.scanDocument(XMLParser.java:2830)
at com.sap.engine.lib.xml.parser.XMLParser.parse0(XMLParser.java:229)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parseAndCatchException(AbstractXMLParser.java:145)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:160)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:261)
at com.sap.engine.lib.xml.parser.Parser.parseWithoutSchemaValidationProcessing(Parser.java:280)
at com.sap.engine.lib.xml.parser.Parser.parse(Parser.java:342)
at com.sap.engine.lib.xml.parser.SAXParser.parse(SAXParser.java:125)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at com.sap.aii.messaging.util.StreamXMLScannerImpl$EventProducer.run(StreamXMLScannerImpl.java:598)
at java.lang.Throwable.<init>(Throwable.java:56)
at java.lang.Throwable.<init>(Throwable.java:67)
at org.xml.sax.SAXException.<init>(Unknown Source)
at org.xml.sax.SAXParseException.<init>(Unknown Source)
at com.sap.engine.lib.xml.parser.NestedSAXParseException.<init>(NestedSAXParseException.java:23)
at com.sap.engine.lib.xml.parser.SAXParser.parse(SAXParser.java:144)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at com.sap.aii.messaging.util.StreamXMLScannerImpl$EventProducer.run(StreamXMLScannerImpl.java:598)
Caused by: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 6e, 74, 6f(:main:, row:1, col:3)
at com.sap.engine.lib.xml.parser.XMLParser.scanProlog(XMLParser.java:2785)
at com.sap.engine.lib.xml.parser.XMLParser.scanDocument(XMLParser.java:2830)
at com.sap.engine.lib.xml.parser.XMLParser.parse0(XMLParser.java:229)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parseAndCatchException(AbstractXMLParser.java:145)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:160)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:261)
at com.sap.engine.lib.xml.parser.Parser.parseWithoutSchemaValidationProcessing(Parser.java:280)
at com.sap.engine.lib.xml.parser.Parser.parse(Parser.java:342)
at com.sap.engine.lib.xml.parser.SAXParser.parse(SAXParser.java:125)
... 3 more
<br><br><br>
<b>ps: the big XML is well formed! It seems the application server refuses the http request (the message does not appear at SXMB_MONI)</b><br><br>
thanks in advance<br><br>
Julio
Julio,
Are you sure that XML is correct?
No data allowed here: (hex) 6e, 74, 6f(:main:, row:1, col:3)
I also see Parse exceptions at different lines?
check the NOTE : 931765 @
https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=931765
Check if the incoming XML has style informaton associated with it. Refer to following link for more info.
http://schemas.xmlsoap.org/soap/envelope/
If the problem still persists, Restart J2EE Instance.
Regards,
Venkat.
Edited by: Venkat Anusuri on Jun 3, 2009 5:34 PM
Similar Messages
-
Mapping related errors in SOAP Adapter scenario
Hello Friends
I have done this several times and in this particular case I am getting some errors.
Here is the scenario
External --- (SOAP) --- XI -
(RFC) -
SAP TABLE.
Program
I have created an XSD (External definition) to get the data to XI using SOAP Adapter.
I have done the mapping and everything looks Ok to me. I even restarted my XI server. All other scenarios are working except for this particular scenario in question.
When I looked at <SXMB_MONI> I see the xml string coming in correctly with proper tags and data as expected.
However, it is failing with some mapping errors.
Here is the error message I got in SXMB_MONI
Any help will be greatly appreciated.
<Trace level="1" type="T">Interface Mapping http://cincom.com/config AddConfigDNA</Trace>
<Trace level="1" type="T">RuntimeException during appliction Java mapping com/sap/xi/tf/_AddConfigDNARequest_</Trace>
<Trace level="1" type="T">com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:403) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) 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:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.mappingtool.tf3.IllegalInstanceException: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:283) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:398) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) 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:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)</Trace>
<Trace level="1" type="T">Runtime exception occurred during execution of application mapping program com/sap/xi/tf/_AddConfigDNARequest_: com.sap.aii.utilxi.misc.api.BaseRuntimeException; RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd</Trace>
<Trace level="1" type="T">com.sap.aii.ibrun.server.mapping.MappingRuntimeException: Runtime exception occurred during execution of application mapping program com/sap/xi/tf/_AddConfigDNARequest_: com.sap.aii.utilxi.misc.api.BaseRuntimeException; RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:73) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) 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:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:403) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) 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:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.mappingtool.tf3.IllegalInstanceException: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:283) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:398) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) 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:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)</Trace>
<Trace level="1" type="E">CL_XMS_PLSRV_MAPPING~ENTER_PLSRV</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
</SAP:Trace>
</SOAP:Header>
- <SOAP:Body>
- <SAP:Manifest xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-manifest-5CABE13F5C59AB7FE10000000A1551F7">
- <SAP:Payload xlink:href="cid:[email protected]">
<SAP:Name>MainDocument</SAP:Name>
<SAP:Description>Main XML document</SAP:Description>
<SAP:Type>Application</SAP:Type>
</SAP:Payload>
</SAP:Manifest>
</SOAP:Body>
</SOAP:Envelope>Hi Ram,
This error is due to error in message mapping.The map rules you have specified for the Node: "ZBAPI_ADD_CONFIG_DNA" is not getting satisfies due to which it is unable to create the Node who occurance is mandatory.Check if map rule specified for this particular Node.
Thanks,
Bhargav.
Note:Award Points if found useful -
Error in SOAP Adapter Response
I am getting the following Error in SOAP Response
... but when i tried the with ALTOVA XML SPY its working fine..
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Inbound Message
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="PARSING">ADAPTER.SOAP_EXCEPTION</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>soap fault: Registration Method error</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>hi,
check the XML that you send to the WS
if the server returned this soap fault it might mean that XML was not correct .
also take a look at the default.trc log file from visual administrator-> server -> services -> log viewer -> locations -> com -> aii -> bc -> soap
regards
kummari
Edited by: kummari on Jul 29, 2008 5:40 AM -
Hi Guys,
I am trying to send a SOAP message to an external webservice to use a proxy.
I put host and gate in receiver soap adapter.
When i execute i have the next error:
SOAP:Call Failed
SOAP:error occured:java.io.IOException: invalid content type for SOAP: TEXT/PLAIN
Has anyone got a suggestion as to how I may resolve this problem?
Thanks very much,
AntonioHi Antonio,
Basically the issue is with the response that the webservice is returning, it may not be a valid reposne..use the TCP-Monitor tool from SAP to see the request/response message flowing...
Please do a search onsdn itself on your issue...you should get lots of threads talking about the same problem in the XI forum...
Thanks,
Renjith -
Error Https SOAP Adapter:NoSuchAlgorithmException: No such algorithm: RSA
Hi,
I'm using a SOAP Adapter Receiver to integrate a file to an External WS (with HTTPS). But when I tried to execute It I got the following error:
Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Unable to encrypt preMasterSecret: java.security.NoSuchAlgorithmException: No such algorithm: RSA: iaik.security.ssl.SSLException: Unable to encrypt preMasterSecret: java.security.NoSuchAlgorithmException: No such algorithm: RSA
SOAP: call failed: iaik.security.ssl.SSLException: Unable to encrypt preMasterSecret: java.security.NoSuchAlgorithmException: No such algorithm: RSA
I think It is a problem with the creation of the secure channel of HTTPS.
Any tip is very welcome!!
Thanks
Martinhttp://java.sun.com/j2se/1.4.2/docs/guide/security/jce/JCERefGuide.html#AppA
there is not much info to find about who provides for RSA.RSA is already implemented in the Crypto-Provider by Sun. You don't have to laod a special provider.
The following sample is just enough:
Cipher cipher = Cipher.getInstance("RSA");Jan -
Hello Everybody,
I have a SOAP adapter with several communication channels configured.
When i want to test these scenarios, i obtain this error:
com.sap.aii.messaging.net.TransportException: HTTP 401 Unauthorized
at com.sap.aii.messaging.net.ClientHttpImpl.call(ClientHttpImpl.java:180)
at com.sap.aii.messaging.adapter.WSTestClient.doPost(WSTestClient.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.aii.messaging.adapter.Zone.service(ModuleGUIBrowserEngine.java:1072)
at com.sap.aii.messaging.adapter.HTTPRequest.run(ModuleGUIBrowserEngine.java:370)
What could be happening? Is something about permissions in SOAP? in this case what are the SOAP commands to specify this parameters?
Thakns a LOT!!
Regards,
Javier SahagunHi agasthuri
I readed https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/4061. [original link is broken] [original link is broken] [original link is broken] [original link is broken]
I restarted the service in SICF transaction, etc, etc, etc.....
now I execute and I receive
java.lang.NullPointerException
at com.sap.aii.messaging.net.EndpointImpl.parseURI(EndpointImpl.java:303)
at com.sap.aii.messaging.net.EndpointImpl.<init>(EndpointImpl.java:59)
at com.sap.aii.messaging.net.EndpointHTTPImpl.<init>(EndpointHTTPImpl.java:33)
at com.sap.aii.messaging.net.FactoryImpl.createEndpoint(FactoryImpl.java:116)
at com.sap.aii.messaging.adapter.XMBTestClient.doPost(XMBTestClient.java:223)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.aii.messaging.adapter.Zone.service(ModuleGUIBrowserEngine.java:1072)
at com.sap.aii.messaging.adapter.HTTPRequest.run(ModuleGUIBrowserEngine.java:370) -
Hello,
Got the following error on a SOAP receiver. Its a synchones interface. I get the following error:
com.sap.aii.af.ra.ms.api.RecoverableException: SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Internal Server Error (Caught exception while handling request: java.rmi.RemoteException: java.sql.SQLException:
Transport protocol: HTTP
Message protocol: SOAP 1.1
Any help would be welcome!
Regards,
ErikInternal Server Error (Caught exception while handling request:
The message format that you are sending to the WebService is not proper.
1) Confirm from the WS team that you are using the required WSDL (the WSDL is latest)
2) The mapping is producing the required target (WSDL) structure.
Got the following error on a SOAP receiver.
3) Since you are having SOAP at the receiving end make sure that you have maintained the proper Target URL and Action (if any) in the SOAP Channel.
Its a synchones interface
I hope you have maintained proper Message/ Service Interfaces for this scenario (synchronous).
Regards,
Abhishek. -
PO message processing error at SOAP Adapter
Hello All,
After an PO scenarion setup and performing one messageprocessing in found following error at RW Message Monitoring:
Exception caught by adapter framework: SOAP: response message contains an error XIServer/UNKNOWN/ModuleUnknownException - com.sap.aii.af.mp.module.ModuleException: either no channelID specified or no channel found for the specified party, service, and channel name, MessageServlet(Version $Id: //tc/aii/30_REL/src/_adapters/_soap/java/com/sap/aii/af/mp/soap/web/MessageServlet.java#13 $) at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:412) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.sap.engine.services.servlets_
Please could someone tell me where the problem is?
Regards,
JochenHi Jochen
Check if thse threads can help you
Now based on error description -
Refer this SAP Note - 856597 QUestion no 1 -for SOAP adapter configuration- i.e URL
Also have a look into this thread-
SOAP Problem
SOAP Error when testing messages.
*************Reward points if helpfull************* -
How to handle error in SOAP adapter
Hi all,
I have a scenario where i have configured SOAP adapter to call a webservice which is working fine. But when ever server hosting the webservice is down, PI still shows the message is processed successfully. Through RWB, i can see that message failed in Channel Monitoring.
Can any body suggest how to capture this so that i could raise an alert. In my alert config, i have already set it for the receiver failure.
Thanks
-KulwantHI Kulwant
SOAP always send SOAP fault message in SYNC as well as ASync. You get HTTP response code 200 or system failure.
If the target system is down you will see successfully process but the response will be system failure
Check https://service.sap.com/sap/support/notes/856597
Moreover you can implement BPM where you can raise exception capturing this response. Thats the other way !!
Thanks
Gaurav -
ABAP-Proxy to SOAP: Error in SOAP Adapter
Hi!
I would like to implement ABAP-Proxy to SOAP scenario.
Unfortunately my SOAP receiver channnel has the following error:
SOAP: call failed: java.io.IOException: No SOAP Envelope but 1 definitions; HTTP 200 OK
Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: No SOAP Envelope but 1 definitions; HTTP 200 OK: java.io.IOException: No SOAP Envelope but 1 definitions; HTTP 200 OK
Furthermore the call of /sap/bc/soap/rfc of business system B is erroneous
http://<server system B>:8000/sap/bc/soap/rfc
Here I get the error: HTTP 500 Internal Server error
Can some one help me to solve this problem?
Thank you very much!
regards
HolgerHi,
Are you using the webservice exposed by SAP or it is third party webservice. Can you explain your complete scenario? What is the url you have given in your receiver SOAP Channel? Was that no configured earlier?
If at all you are using the SAP webservice, the wsdl link should be.
http://<server>:<http port>/sap/bc/soap/wsdl11?services=BAPI_MATERIAL_EXISTENCECHECK&sap-client=200
The target url you will be able to see in the wsdl itself also
amit -
faultstring SOAPAction /faultstring --- Error in Axis Adapter
Hi All,
I am doing an sender https scenario. My end customer uses ariba to send messages to XI. They dont want to use username and pwd to send the document. So we have eliminated the soap adapter (because it asks for username and pwd to send the request). Now we are using axis adapter (where we have removed the user and pwd paramters in axis adapter itself). So it dont ask for username and pwd anymore for any of the axis comm. channel.
Now the issue is when we send a https request to my url(I have created wsdl using xI and took the url from it) using SOAP UI I am able to get it into xi. But when they use ariba or Fiddler (we can download free for testing) they are getting an error message like:
<soapenv:Body>
<soapenv:Fault>
<faultcode xmlns:ns1="http://xml.apache.org/axis/">ns1:Client.NoSOAPAction</faultcode>
<faultstring>SOAPAction</faultstring>
<detail>
<ns2:stackTrace xmlns:ns2="http://xml.apache.org/axis/">SOAPAction
at com.sap.aii.adapter.axis.web.ServletReceiverCore.getSoapAction(ServletReceiverCore.java:665)
at com.sap.aii.adapter.axis.web.ServletReceiverCore.doPost(ServletReceiverCore.java:273)
at com.sap.aii.adapter.axis.web.MessageServlet.doPost(MessageServlet.java:392)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
When I researched this it seems xi is expecting a soap action. But they dont have an option to add the soap action on their side. Now I am struck what to do.
When I googled for this error, it seems it is not error with xi, it is with the apache axis itself. It seems like by default apache axis expects a soapaction and if we dont want to send then we need to give soapaction as "" (which is null). I dont know where to give this. I assume that we need to change the jar file somewhere on axis adapter. No idea where it is and what to do with this approach.
Also I have seen stefans weblog:
/people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine
With this first I need to create an https abap port. Then I can use soap adapter directly by sending username and pwd directly to the url. But the catch here is also to send soapaction which in our case is not possible.
Can anyone of you please help me out.
Regards,
---SatishSatish,
I think the easiest solution is to
1. configure https on the ABAP stack: in trx STRUST you can use the same SSL certificate used to setup SSL in the KeyStorage service of V.A. so that calling the ABAP http or the J2EE http will be copletely transaprent to your SSL client (i.e. ARIBA)
2. use HTTP plain adapter ( <host>:<abap_https_port>/sap/xi/adapter_plain )
- you get rid of the SOAP envelope and SOAP action issue, as the XML payload posted by Ariba will be immediately treated as a PI message payload
- here also you can use the same two parameters as per Stefan's blog (&sap-user=<username>&sap-password=<password>) and thus get rid of the authentication issue.
Stuff sent to the plain_adapter is handled by the CL_HTTP_PLAIN_INBOUND class (use trx SE24 to take a look) and method IF_HTTP_EXTENSION~HANDLE_REQUEST: there are a number of parameters that can be supplied by the client calling it (i.e. Ariba). See below an excerpt.
* call-syntax: XI 3
* http://hostname:port/path
* ?namespace=???
* &interface=???
* &service=???
* &party=???
* &agency=???
* &scheme=???
* [&qos= EO|BE|EOIO]
* [&msgguid=???]
* [&queueid=???]
* [&trace=[1|2|3]]
I am strongly convinced that this is the far easiest solution. Programming Axis handlers can be tricky though fascinating (I've written a nice one I'll probably blog about as soon as I get a chance.) But I will nevertheless try to simulate your Axis issue when I get access to a machine like your own.
Cheers,
Alex -
Hello, expert,
I have made SOAP adpeter work in PI 7.0, however after upgrading to PI 7.1, I have issue with a test scenario as following.
I've defined DT, MT and SI (Service Interface) in ESR (no mapping needed)
In ID, I configured a scenario SOAP --> PI --> File.
I tested the scenario in RWB using the test tool for adapter engine using URL:
http://host:port/XISOAPAdapter/MessageServlet?channel=:BC_comp:CC_Notification_SOAP_Sender
the message is attached in the end of this post.
The message was successfully send to PI and saved to file, however the message going into IE pipeline and finally saved to the file is not the one I sent.
Message sent to SOAP adapter:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_Notification xmlns:ns0="http://mynamespace/xi">
<Notification>
<Number>12345</Number>
<Type>abc</Type>
<Status/>
<OrderNo/>
<FunctionalLocation>qaz</FunctionalLocation>
<StartDate/>
<EndDate/>
</Notification>
</ns0:MT_Notification>
Message going into IE pipeline and further saved to file:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Inbound Message -->
<sap:Manifest xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sap="http://sap.com/xi/XI/Message/30" xmlns:xlink="http://www.w3.org/1999/xlink">
<sap:Payload xlink:type="simple" xlink:href="cid:payload-29092409f6d11ddc4d982a0c41f100csap.com">
<sap:Name>PayloadName</sap:Name>
<sap:Description>PayloadDescription</sap:Description>
<sap:Type>Application</sap:Type>
</sap:Payload>
</sap:Manifest>
Also in sxmb_moni, there is a acknowledgement which do not expect.
Does anybody have an idea how this happens?
Thank you
JaysonHi!
I want to answer this thread as 2 parts:
1. First check all of your configuration whether you have done...correctly or not later please activate all of your objects...
then try your Scenario once..if not do one thing..
2:
I my sugestion is Why don't you try yourr scenario by using either SOAP CLient Tool or else ALTOVA XML SPY TOOL...
Here I am provding the Steps to be followed to use ALTOVA XML SPY Tool
please make sure even though you have done correctly..
Steps for Testing via ALTOVA>>
1. Go to ID-> TOOLS-> Define Web Service
2. Give following URL in following window
For without Party:
note: http://<HOST name:5<Port>00/XISOAPAdapter/MessageServlet?channel=:<Channel Name>:<Adapter Name>
3. Give Message Interface Name of Scenario
4. Give following details in following screens Service Name, Message Interface Name, Namespace
5. Finish & Save the WSDL in local folder to give to web-services
(Generated WSDLu2019s attached in Technical Design Document)
NOTE: AFter generating you can observe the above SOAP URL with your objects name...
6.Once the WSDL file is created. Use a SOAP client tool or else aither ALTOVA XML SPY Tool to create the SOAP request.
You can create SOAP Request from WSDL using the following tool
Once you have created the SOAP request, use the same as the payload and test the scenario.
7. Select the option in the SEND SOAP REQuest in the MENU present in the top list of ALTOVA XML SPy Tool and give inputs i.e., SOAP URL and also give server details and it will ask authentification details
8. Now by giving Authentification details you can send successfully....
9. Now Got SXMB_MONI and now check your scenario is success or not..
10. IF not go to MEssage monitoring in RWB and check at both the INtegration Server Level and ADAter engine level and then Check the AUDIT LOG
11. ALso you can check Audit log in COmmunication channel monitoring
12. If your SOAP Channel is in Red check Errors and then stop that channel manually and start once again and try the scenario once again...
http://help.sap.com/saphelp_erp2004/helpdata/en/ae/d03341771b4c0de10000000a1550b0/frameset.htm
I hope it will be useful to you in final case...Suppose if it is useful to you please close this and award points to the repective contributors if it is useful to you..
Regards:
Amar Srinivas ELi -
Hi: We are using weblogic81 sp3. Other developers in my office ran the same porgram and got no errors.
My startWebLogic.cmd are configured exactly same as theirs.
My startWebLogic classpath:
set CLASSPATH=%WL_HOME%\server\lib\ojdbc14.jar;%WL_HOME%\server\lib\CR122067_81sp3.jar;%WEBLOGIC_CLASSPATH%;%POINTBASE_CLASSPATH%;%JAVA_HOME%\jre\lib\rt.jar;%WL_HOME%\server\lib\webservices.jar;%CLASSPATH%
I keep getting this webservice error.
SOAP Fault:javax.xml.rpc.soap.SOAPFaultException: Exception during processing: w
eblogic.xml.schema.binding.DeserializationException: mapping lookup failure. typ
e=['java:language_builtins.util']:ArrayList schema context=TypedSchemaContext{ja
vaType=[Ljava.lang.Object;} (see Fault Detail for stacktrace)
Detail:
<detail>
<bea_fault:stacktrace xmlns:bea_fault="http://www.bea.com/servers/wls70/webse
rvice/fault/1.0.0">weblogic.xml.schema.binding.DeserializationException: mapping
lookup failure. type=['java:language_builtins.util']:ArrayList schema context=T
ypedSchemaContext{javaType=[Ljava.lang.Object;}
at weblogic.xml.schema.binding.RuntimeUtils.lookup_deserializer(RuntimeU
tils.java:461)
thank you for your helpwe used castor to do xml mapping
-
Hi All,
We have a scenario of FTP-->PI---> Webservice. While triggering the data in the FTP, it is failing in the PI with the below error
SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Server was unable to read request. ---> There is an error in XML document (1, 447). ---> Input string was not in a correct format.
Can you please help?Hi Raja- It seems to be a data quality issue.
Check for the value @ 1447 position in the xml message that you are trying to send to web service..
may be a date filed/decimal value which is not in expected format. -
SOAP Adapter - Error because of special character (u00FC - Umlaut) in payload
Hello,
We have a SOAP sync scenario.
SAP -> PI 7.0 -> 3rd Party system
We have a special character (ü - Umlaut) as part of the payload.
When the message enters message pipeline in PI, I can see the payload XML till message branching step.
From Message mapping step, i get the message - "The XML page cannot be displayed. An invalid character was found in text content" in SXMB_MONI.
In communication channel monitoring, I see the following error:
SOAP: error occured: com.sap.aii.af.ra.ms.api.RecoverableException: Parsing Error: com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2106)(:main:, row=2, col=2106) -> com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2106): java.io.IOException: Parsing Error: com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2106)(:main:, row=2, col=2106) -> com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2106)
But, when I pass the same message(with special character) to the 3rd party system using SOAP UI, i get a valid response back.
So, what is going wrong in PI?
Thanks,
ChandraHi Gouri,
you are right. My message is successful in SXMB_MONI, and the error is coming from comm channel monitoring with deliverin to target.
My sender is a proxy, and we can not specify any encoding in proxy sender.
I did not specify any encoding in SOAP Receiver aswell.
This is the sequence in comm channel monitoring:
Success: Delivering to channel: CI_SOAP_Receiver_Sync
Success: MP: Entering module processor
Success: MP: Processing local module localejbs/sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean
Success: SOAP: request message entering the adapter with user J2EE_GUEST
Error: SOAP: call failed: java.io.IOException: Parsing Error: com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2046)(:main:, row=2, col=2046) -> com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2046)
Error SOAP: error occured: com.sap.aii.af.ra.ms.api.RecoverableException: Parsing Error: com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2046)(:main:, row=2, col=2046) -> com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2046): java.io.IOException: Parsing Error: com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2046)(:main:, row=2, col=2046) -> com.sap.engine.lib.xml.parser.ParserException: Unsupported character: 72(:main:, row:2, col:2046)
So, what can i do to fix this?
Thanks,
Chandra
Edited by: Chandra Sekhar H on Mar 3, 2011 12:25 PM
Maybe you are looking for
-
Retro Migration: Intel mac mini to PPC G4 powerbook
I have a perfectly good top of the range G4 powerbook sitting around and my partner wants to use it to to go mobile, is it possible to use the leopard migration assistant to move data from an intel mac mini to a G4 powerbook, is it all just a normal
-
The status bar appears at the bottom corner of the page, covering up ongoing info at the bottom of my pogo game page. If I hover the cursor over top of it, it moves to the other bottom corner....very annoying to have it pop up like that.
-
Need Help ORA-00257: archiver error. Connect internal only, until freed.
The archive log has exceeded its file limit & hence i'm receiving this error.. The DB we are using is set to in Archive log mode, since i'm using streams in my DB. Now the transactions in DB get archived. I would like to know abt the possible ways of
-
My Pin is locked and it's being used by someone else!
Hi, I'm from Venezuela and I bought my Blackberry Curve 8320 through Amazon last week. When I was trying to activate my BB services here in Venezuela they found out that the pin is being used by someone else in USA with TMobile. How can this be possi
-
How can I obtain the coefficients m, b from MAX scale?
I use CWAI ActiveX for acquire data. Also, I use MAX to set the virtual channels for CWAI. When I try to use scale option of MAX (for exemple y = 0.5x + 3 to transforn volts in my phisics values) I obtain true data from ScaledData (phisics values), b