RE: Error in soap to jdbc synchronous
I am doing webservice to jdbc scenario....
My data is getting inserted into database, but its showing soap response in XML Spy....
This is the error while i copy input XML file from SXMB_MONI to test tab of Integration Repository and executed in debug mode....
<?xml version="1.0" encoding="UTF-8" ?>
<ns0:MT_Jdbc_request xmlns:ns0="http://soaptojdbcsync.com/demo">
<STATEMENTNAME>
<TEST1 action="INSERT">
<TABLE>TEST1</TABLE>
-<access>
<BPID>00008</BPID>
<REQ_CUST_NUM>00234</REQ_CUST_NUM>
<MATERIAL_NUMBER>00000000000000001068</MATERIAL_NUMBER>
<QTY>00250</QTY>
<SUPP_CUST_NUM>00456</SUPP_CUST_NUM>
</access>
</TEST1>
</STATEMENTNAME>
</ns0:MT_Jdbc_request>
error in Repository
12:37:52 Start of test
Document start
Start tag [ns0:MT_Jdbc_request]
Add raw attribute [ xmlns:ns0="http://soaptojdbcsync.com/demo"]
Start tag [STATEMENTNAME]
Start tag [TEST1]
Add attribute: [action]=[INSERT]
Start tag [TABLE]
Put value [TEST1]
Close tag [TABLE]
Start tag [access]
Cannot produce target element /ns0:MT_Jdbc_request/STATEMENTNAME/TEST1/access/BPID. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd Cannot produce target element /ns0:MT_Jdbc_request/STATEMENTNAME/TEST1/access/BPID. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd
12:37:52 End of test
Hi Jai,
I am getting the same error. In my JDBC response, the source message (the actual JDBC response from the database) is in one SWCV and the target message is in another SWCV. Is this a problem?
The following is the response from JDBC which is not mapping to the target message, which is abstract.
<?xml version="1.0" encoding="utf-8" ?>
- <ns1:insert_olac_za_response xmlns:ns1="urn:bp:xi:dwn:re:cust_mdm:cmdm:scdb_olac_za:200">
- <Insert_response>
<insert_count>1</insert_count>
</Insert_response>
</ns1:insert_olac_za_response>
Similar Messages
-
SOAP to JDBC Synchronous scenario
Hi experts
As per my requirement iam going to do SOAP to JDBC.
Please guide me how to do SOAP to JDBC (synchronous)
through XI .any step by step docs or blogs related to this
please forward to
[email protected]
if helpful points will be rewarded.
Regards,
Nareshhi..
To send SOAP request u have to download the Altova XML spy tool..
follow this link for SOAP adapter.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d23cbe11-0d01-0010-5287-873a22024f79
for JDBC receiver adapter follow
/people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
regards
MAnas
reward if helpful.. -
CANNOT_READ_PALOAD error with SOAP to PROXY Synchronous interface
Hi,
Problem with SOAP to PROXY Synchronous interface.
In Production client, some times we are getting the below shown error in SXMB_MONI. There is no Inbound payload also.
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="MAPPING">CANNOT_READ_PAYLOAD</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:Stack>Unable to read payload from the message object</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
</SAP:Error>
Please suggest me to resolve this.
Thanks in advance,
Hari.Hi Hari,
In your case, check SAP Notes: 1082111 and 1060723.
Regards,
P.Rajesh -
Error while testing Soap to JDBC
Hi All,
While testing Soap to jdbc i got this error:
<?xml version='1.0'?>
<!-- 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><![CDATA[
java.lang.NullPointerException; nested exception caused by:
java.lang.NullPointerException; nested exception caused by:
org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:236)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:215)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:386)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:316)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1438)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanPIData(XMLScanner.java:689)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanPIData(XMLDocumentFragmentScannerImpl.java:750)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanPI(XMLScanner.java:664)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDispatcher.dispatch(XMLDocumentScannerImpl.java:845)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:176)
at com.sap.aii.af.sdk.xi.util.StreamXMLScannerImpl$EventProducer.run(StreamXMLScannerImpl.java:599)
]]></text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
Regards,
NutanBelow threads will help u
Re: Error: ADAPTER.JAVA_EXCEPTION - EXCEPTION_DURING_EXECUTE
Re: 401 unauthorized error in webservice scenario
Regards,
Jayasimha Jangam -
Error while executing the SOAP-XI-JDBC(syn) scenario
Dear Forum,
We have done SOAP-XI-JDBC(synch) scenario with out BPM.
When we sent the request data from EP to Oracle database through XI, we got an error,Runtime in Message-Mapping transformation~.
com.sap.aii.utilxi.misc.api.BaseRuntimeException: Runtime in Message-Mapping transformation: Cannot produce target element /ns:Customer/customers. 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:291)
Exception message says that it is a mapping issue. But we got the responce data from database along with this message.In message monitoring we got the message processed successfully.
Now i am not able to understanding why it throughs an error Runtime in Message-Mapping transformatio~ first time ?
Pls revert me to fulfill this task successfully.
Points will be rewarded.
Regards,
NareshDear Friends,
Sorry for the delay,and Thank you for your quick responce.
Yes I got that message under trace option in SXMB_MONI,
Pls find the following msg structures and if any error please let me know status...
Soap request structure:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://soap2dbns" targetNamespace="http://soap2dbns">
<xsd:element name="soap_reqmt" type="soap_reqdt" />
<xsd:complexType name="soap_reqdt">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
5b474a34c8a511dc8d8e001a4bf038d4
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Request" maxOccurs="unbounded">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
49b1ae20c81211dcce03001b78afb958
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ORDERID" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
49b1ae21c81211dcc20d001b78afb958
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="Operation" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
49b1ae22c81211dc858a001b78afb958
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Data base request structure:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://soap2dbns" targetNamespace="http://soap2dbns">
<xsd:element name="db_reqmt" type="db_reqdt" />
<xsd:complexType name="db_reqdt">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
5b4e7620c8a511dcc4fe001a4bf038d4
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="STATEMENTNAME" maxOccurs="unbounded">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fa204eb0bceb11dcbb54001b78b0798a
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="FETCHDATA">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fa204eb1bceb11dc9750001b78b0798a
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="TABLE" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fa204eb3bceb11dccc94001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="access">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fa204eb4bceb11dc9b35001b78b0798a
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ORDERID" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fa204eb5bceb11dca20a001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="ITEM" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
d0279840c81011dc8e4e001b78afb958
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="QUANTITY" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
d0279841c81011dcb8f4001b78afb958
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="PRICE" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
d0279842c81011dc832f001b78afb958
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="key">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
89f43170c81611dcc8fa001b78afb958
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ORDERID">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
89f43171c81611dcb6e3001b78afb958
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="compareOperation" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
89f43172c81611dccba5001b78afb958
</xsd:appinfo>
</xsd:annotation>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="action" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fa204eb2bceb11dca298001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Soap Responce Structure:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://soap2dbns" targetNamespace="http://soap2dbns">
<xsd:element name="soap_resmt" type="soap_resdt" />
<xsd:complexType name="soap_resdt">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
8d49d494c8a411dc81f5001a4bf038d4
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="response" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
491ccd30bd0611dcb29d001b78b0798a
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="row" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
491ccd31bd0611dca3d7001b78b0798a
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ORDERID" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
491ccd32bd0611dcc7d1001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="ITEM" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
491ccd33bd0611dca6ad001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="QUANTITY" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
491ccd34bd0611dc95a8001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="PRICE" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
491ccd35bd0611dcc034001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Database responce Structure:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://soap2dbns" targetNamespace="http://soap2dbns">
<xsd:element name="db_resmt" type="db_resdt" />
<xsd:complexType name="db_resdt">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
8d3b7cb1c8a411dcb1d6001a4bf038d4
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="STATEMENTNAME_response" maxOccurs="unbounded">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
adca3410bcfd11dcaf4c001b78b0798a
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="row" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
adca3411bcfd11dc92d6001b78b0798a
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ORDERID" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
adca3412bcfd11dc92e8001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="ITEM" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
adca3413bcfd11dc9f7a001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="QUANTITY" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
adca3414bcfd11dcc6c4001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="PRICE" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
adca3415bcfd11dca54c001b78b0798a
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Regards,
Naresh -
SOAP Receiver adapter error. SOAP CALL Failed
Hi ,
I am implementing scenario R/3->RFC adapter->XI->SOAP REceiver adapter->Web Service (Synchronous). I am getting the error.
SOAP: call failed
SOAP: error occured: java.net.ConnectException: Connection timed out
Message log is as below.
Any clue ?
Thanks & Regards,
Mathew
2005-10-31 18:59:58
Success
output
1130810398454
The message was successfully received by the messaging system. Profile: XI URL: http://host:Port/MessagingSystem/receive/AFW/XI
2005-10-31 18:59:58
Success
output
1130810398458
Using connection AFW. Trying to put the message into the request queue.
2005-10-31 18:59:58
Success
output
1130810398458
Message successfully put into the queue.
2005-10-31 18:59:58
Success
output
1130810398459
The message was successfully retrieved from the request queue.
2005-10-31 18:59:58
Success
output
1130810398459
The message status set to DLNG.
2005-10-31 18:59:58
Success
output
1130810398460
Delivering to channel: CC_CALCULATOR
2005-10-31 18:59:58
Success
output
1130810398564
SOAP: request message entering the adapter
2005-10-31 19:03:07
Success
output
1130810587497
SOAP: call failed
2005-10-31 19:03:07
Error
output
1130810587497
SOAP: error occured: java.net.ConnectException: Connection timed out
2005-10-31 19:03:07
Error
output
1130810587498
Exception caught by adapter framework: Connection timed outHi Mathew,
Check if the webservice is availble??? Based on the error below, it looks like the message is timing out at the Adapter Engine level waiting for the connection to make the webservice call...
Prasad -
SOAP TO JDBC scenario: calling stored procedure which will return the value
Hi
I have Soap To Jdbc scenario in which I am going to call the Stored Procedure at target side which will be executed and it is going to return the result set .
Result contains following values.
return code as ( 0 Or 1) and also specific exception message if its return code as 1.
Could you suggest me the way by which I can handled this return code and send it back to the Sap PI system then the same thing is directed the to SMTP server for sending mail to consern person.
Regards
KumarThe OUT parameters of stored procedure will be returned as response. Where exactly are you facing the proble? Here is a complete walkthourgh
/people/luis.melgar/blog/2008/05/13/synchronous-soap-to-jdbc--end-to-end-walkthrough
In your case, you don't want response at sender. Instead you want to mail it. For this you may use BPM to design your scenario with following steps
Receive (to receive data from sender)
Send Sync (to stored procedure and get response)
Send Async (to mail receiver)
Regards,
Prateek -
IDOC to JDBC Synchronous interface
Hi Experts,
I am using PI 7.1.
Having requirement of IDOC to JDBC synchronous scenario. When data is coming from SAP to DB it is updating data in to u201CXu201D table, when data response from DB is u201CYu201D table.
How can I configure this interface, Please suggest me.
Best Regards,
Pasi...Hello,
For special problematic of IDOC -> JDBC and sending back acknowledgement have a look to One Logical System Name for serveral BPM Acknowledgements
One Logical System Name for serveral BPM Acknowledgements
Step by Step JDBC Synchornous
JDBC Receiver Adapter -- Synchronous Select Step by Step
Integration with database made easy
Integration with Databases made easy Part 1.
SOAP <=> JDBC Synchronous
SYNCHRONOUS SOAP TO JDBC - END TO END WALKTHROUGH
Serialize IDOC XML
How to serialize IDoc XML messages fed into XI
Regards,
Phani -
HI
I am having soap toABAP proxy synchronous interface , when i test from soap UI tool i am getting the below errro . can any body help me with this error
<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: XIProxy:PARSE_APPLICATION_DATA:
at com.sap.aii.adapter.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:1178)
regards
sandeep
Edited by: pendyalas on Jul 27, 2011 5:01 PMHello,
can you check the message format defined in repository.
Regards
Vivek -
SOAP - XI- PROXY synchronous scenario
Hi Experts,
I have a
SOAP -
XI -
PROXY Synchronous Scenario
I have done the following things ESR and ID
ESR:
1. Created DT and respective MT for Request and Response.
2. Created Service Interfaces with Synchronous mode with respective MT's.
3. Created Two separate MM with respective Request and Response MT's.
4. Created Operation Mapping and call both Request and Response Mappings in it.
Integration Directory (ID):
1. Configured considering Sender SOAP and Receiver ECC Services.
2. Configured CC with required parameters in Sender SOAP CC and Receiver XI CC.
3. Generate wsdl from Sender agreement and save it as a local file.
I am getting error in receiver agreement. Do I need to specify any Module parameters in Module TAB for Sender CC or Receiver CC to synchronous scenario.
Please hep me out.
ThanksHi Ram,
I am getting error in receiver agreement. Do I need to specify any Module parameters in Module TAB for Sender CC or Receiver CC to synchronous scenario.
It looks like you did not create a receiver agreement, or if you did, it did not match the interface that is given or configured in Interface Determination. Can you recheck your configuration?
Regards,
Mark -
Error capturing SOAP fault for Sync Messages
Hi
We have a Sync interface which makes a Proxy call from ECC to PI and then PI makes Soap Sync call to Web application. We are having issues when handling Exceptions. Sender is getting misleading errors in response, even though they are application errors the proxy sender is getting error like MappingObjectNotFound.
When debug the PI system, PI is truncating error info when it return the reponse.
Below is the scenario of Synchronous interface:
ECC(Proxy) -> PI(Soap Receiver Adapter) -> MasterDataApp-(Webserver)
Below is the actual response from Webserver (Extracted via TCPGW sniffer):
<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>*java.rmi.RemoteException: No Messages Found*</faultstring>
<detail>
<ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">hostname.com</ns1:hostname>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
But PI receives this response payload like this :
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- XML Validation Inbound Channel Response
-->
<ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">hostname.com</ns1:hostname>
and then Sync Request mesasge fails with below error because of the unexpected response payload as shown above:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Error SOAP:mustUnderstand="1" xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="MAPPING">NO_MAPPINGPROGRAM_FOUND</SAP:Code>
<SAP:P1>Object ID B0CC6B27847A368AA04F4171EF6460F4 Software Component 86524CE0304911DEAE48CC6C83461631</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:Stack>Mapping program is not available in runtime cache: Object ID B0CC6B27847A368AA04F4171EF6460F4 Software Component 86524CE0304911DEAE48CC6C83461631</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
Also in the response message see this error message:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!--
XML Validation Inbound Channel Response
-->
- <SAP:Error SOAP:mustUnderstand="1" xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SAP:Category>Application</SAP:Category>
<SAP:Code area="UNKNOWN">APPLICATION_ERROR</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>application fault</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="http://xml.apache.org/axis/">hostname</SAP:ApplicationFaultMessage>
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
Please let me for any clues how to handle this error response.
Thanks,
laxmanHi Laxman,
SOAP Adapter cannot handle fault responses. I understand your issue. You even want to send the errorneous response from the Webservice as a payload back to the sender. But because of application error from Webservice, you are getting an error in the response message (Mapping Not found). SOAP Adapter cannot handle application error (i.e you will not get the errorneous response in form of payload) . For details please read below:
The receiver adapter expects a SOAP message as response. For synchrnous calls, a successful response should be returned with HTTP 200. In this case, the content of the SOAP body will be returned to the caller as the response payload. When some error occurs, the SOAP message may contain the SOAP fault element. In this case, when the fault detail element is not empty, its content will be returned as the fault payload in an application error message. For others, a system error message will be returned to the caller.
HTTP/1.1 200 OK
Content-Type: text/xml; charset="utf-8"
<SOAP:Envelope
xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<m:GetLastTradePriceResponse xmlns:m="Some-URI">
<Price>34.5</Price>
</m:GetLastTradePriceResponse>
</SOAP:Body>
</SOAP:Envelope>
will result in an application response message with response payload
<m:GetLastTradePriceResponse xmlns:m="Some-URI">
<Price>34.5</Price>
</m:GetLastTradePriceResponse>
HTTP/1.1 500 Internal Server Error
Content-Type: text/xml; charset="utf-8"
<SOAP:Envelope
xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:MustUnderstand</faultcode>
<faultstring>SOAP Must Understand Error</faultstring>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
will result in a system error message.
HTTP/1.1 500 Internal Server Error
Content-Type: text/xml; charset="utf-8"
<SOAP:Envelope
xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>Server Error</faultstring>
<detail>
<e:myfaultdetails xmlns:e="Some-URI">
<message>My application didn't work</message>
<errorcode>1001</errorcode>
</e:myfaultdetails>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
will result in an application error message with fault payload
<e:myfaultdetails xmlns:e="Some-URI">
<message>My application didn't work</message>
<errorcode>1001</errorcode>
</e:myfaultdetails>
In order to send the erroneous response as a payload to the sender, you should develop flow in below manner:
ECC(Proxy) -> PI --> ECC(Proxy)
In PI make a SOAP lookup. The response of the SOAP lookup will contain the response given by the WebService (it can be a vaid response or an application error in WebService). Now map this response to the proxy...In this way you can handle the application error msgs from webservice..
I hope this helps you...
Regards,
Rakesh Sharma -
Problem with SOAP to JDBC scenario. Please help!
Hi Experts,
I have configured a simple SOAP to JDBC scenario where the input data from webservice call is sent to JDBC for inserting into MSSQL database.
The problem is that even though I have setup the QOS in SOAP channel as EO but still in SXMB_MONI I can see the message getting processed as Synchrous but getting interface mapping not found error. But the data is getting inserted in the database.
Why is this not getting processed asynchrously? Please advice me if I am missing anything?
Thanks
GopalHello Gopal,
Hope these lonks are useful to you:
SOAP to JDBC : EXCEPTION_DURING_EXECUTE
Re: need help on SOAP-JDBC-RFC Scenario
SOAP to JDBC/RFC - RFC/JDBC to SOAP XI Scenario
Thanks,
Satya Kumar -
Client Proxy to JDBC synchronous Scenario
I'm using Proxy--PI---JDBC synchronous shcenario, when i execute the proxy from R/3 it is giving me error "RCVR_DETERMINATION.NO_RECEIVER_CASE_BE" in configuration i have used one inbound receiver determination for request, my question is do i need to have one more reciever determination for response.
Thanks for help.No, you do not have to add additional receiver determination
Usually in sync scenario, make sure you have one receiver determination, no arbitration.
If you have condition for receiver detemination, make sure the condition only return one true.
Liang -
I design a test scenario, http to jdbc synchronous.
I send a test message in rwb, integration Engine. but I can't see message entry in sxmb_moni, and rwb message monitoring.
When I send error sql, I can see message in sxmb_moni.
I don't know why.
Reciever sql request message is
<?xml version="1.0" encoding="UTF-8"?>
<ns0:sd025QR xmlns:ns0="http://topfine.com/TG/BPM"><ST1><DML action="SQL_QUERY"><access>select * from o_tns16_base where sapflag='0'</access></DML></ST1></ns0:sd025QR>
response message structure is:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:sd025QR_response xmlns:ns0="http://topfine.com/TG/BPM">
<ST1_response>
<row>
<compcd/>
<custcd/>
<cigcd/>
<baseqty/>
<unitid/>
<upddate/>
<mq_lsh/>
</row>
</ST1_response>
</ns0:sd025QR_response>got to SXMB_ADM -- > integration engine -- > specific configuration -- > change your logging_synch parameter value to 1
-
Error while registering Oracle JDBC Diagnosability MBean
Hi All,
I get the following error (pasted at the end)when trying to use the OracleDriver class to create connections.
I am using JDeveloper11g-11.1.1.2.0, and
JDeveloper11g-11.1.1.2.0/wlserver_10.3/server/ext/jdbc/oracle/11g/ojdbc6.jar.
I read other posts with similar errors; the recommendation was to update the jar to the latest patch. But that still does not seem to work.
Any help/pointers appreciated.
Thanks
Meera
------------ Error trace ----------------------------------------------------
SEVERE: Error while registering Oracle JDBC Diagnosability MBean.
java.security.AccessControlException: access denied (javax.management.MBeanTrustPermission register)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:568)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission(DefaultMBeanServerInterceptor.java:1824)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:310)
at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:482)
at oracle.jdbc.driver.OracleDriver.registerMBeans(OracleDriver.java:345)
at oracle.jdbc.driver.OracleDriver$1.run(OracleDriver.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:193)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at oracle.communications.brm.pdc.server.transfomation.CrossReferenceDBConnectionObj.initializeConnection(Unknown Source)
at oracle.communications.brm.pdc.server.transfomation.CrossReferenceHandler.<init>(Unknown Source)
at oracle.communications.brm.pdc.server.transfomation.RRE_TransformationEngine.createWorkItemProcessors(Unknown Source)
at oracle.communications.brm.pdc.server.junit.RRE_TransformationEngineTests.testCreateWorkItemProcessors(Unknown Source)
at oracle.communications.brm.pdc.server.junit.RRE_TransformationEngineTests.testMain(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:597)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
at org.junit.runners.Suite.runChild(Suite.java:115)
at org.junit.runners.Suite.runChild(Suite.java:23)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:421)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:912)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:766)Hi,
did you enable the permission at the jvm level?
its' done by adding the following lines to your java.policy file under <JRE_HOME>/lib/security
grant {
// JMX Java Management eXtensions
permission javax.management.MBeanTrustPermission "register";
ciao,
Giovanni
P.S. This solution was taken from http://forums.sun.com/thread.jspa?threadID=491124
Maybe you are looking for
-
Since I upgraded to the new Firefox, the Chat on Yahoo no longer works.
I upgraded to the newest Firefox for my Dell computer with Windows 7. When I went to use the chat section of my Yahoo email page...the chat section will NOT work. When I went back to the Explorer (instead of Firefox)..it works fine. The new upgrade d
-
External Drive not supported, cant burn CDs, after 10.5.8 update
After having spent just about a month sorting out one massive irritation I now get another one. My internal drive is not working, (disc stuck inside and I gave up on it almost a year ago. Please don't give any advice on how to get it out, it's a gone
-
Photoshop elements 5.0 need help
I have uesd Photoshop elemts 5.0 for years. Mainly I use it for cropping, a small amount of touch up. Recently when I try to save a picture as a jpeg the message comes up "could not complete your request because of a program error. I can save as
-
NW 7 EHP1 Installation problem - unable to find control.xml file
Hi, I'm trying to install NW 7 with EHP1 on AIX/Oracle environment. My installation got to the stage where SAPinst paused to allow the installation of the Oracle database software. After installing the Oracle database software, I closed down the SAP
-
Hello, I am trying to create a Gantt chart using an Excel spreadsheet. I can get the data in fine and it looks great, except the data bars are extremely small. I have tried changing the scale and other formatting and I am having no luck. Is there a