on 08-18-2005 3:50 AM
Hi there,
I need a help pls.
I am using XI 3.0 (sp11) with the Receiver J2EE SOAP Adapter to send the SOAP message to a webservice. When the SOAP messages reaches to the clients webservice, I noticed that its added with extra tags:
SOAP XML see on /sxmb_moni is:
--Start
<?xml version="1.0" encoding="utf-8" ?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope http://schemas.xmlsoap.org/soap/envelope">;
<env:Header>
<p:msgDetails>
<p:receiverName>SAMPLE LTD</p:receiverName>
</p:receiver>
<p:docType>invoice</p:docType>
<p:docFormat>xcbl40</p:docFormat>
<env:Body>
<c:Invoice xmlns:c="rrn:org.xcbl:schemas/xcbl/v4_0/financial/v1_0/financial.xsd" xmlns:core="rrn:org.xcbl:schemas/xcbl/v4_0/core/core.xsd">
<c:InvoiceHeader>
<c:InvoiceNumber>3785613101</c:InvoiceNumber>
--
--
at the bottom
</c:InvoiceSummary>
</c:Invoice>
</env:Body>
</env:Envelope>
---End
but when it reaches to the clients webservice they see as below:
--Start
<SOAP:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope
at the bottom
</c:Invoice>
</env:Body>
</SOAP:Envelope>
</SOAP:Body>
</SOAP:Envelope>
--End
It stripped off this tag, </env:Envelope>
and added these extra tags
</SOAP:Envelope>
</SOAP:Body>
</SOAP:Envelope>
In the receiver adapter configuration, I have the following fields populated and i have not enabled any
conversion parameters, proxy and message security. I removed the module (1 localejbs/sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean Local Enterprise Bean soap) from processing sequence.
The fields:
Transport Protocol: HTTP
Message Protocol: 1.1
Adapter Engine: IS
TargetURL: https://<hostname>:<port>/soap/submitInvoice
I do not want the adapter to add any SOAP information.
Any suggestion pls.
TIA.
Ranjan
Hi Ranjan,
the SOAP adapter is intended to add a SOAP envelope to a message. That is how all web service tools do.
If you want to create the SOAP envelope by your own and send the message unchanged to the receiver, use the HTTP adapter instead. In this case the SOAP envelope of the response will be untouched as well.
Regards
Stefan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Guys,
THank you very much for the response.
The problem is that since I have already created the SOAP message in XI exactly how the client's webservice is expecting and when I use the adapter, it appends its own header as a result whats happening is that the XI SOAP message (before hitting the receiver adapter, with all the Envelope, header and body) is becoming the Body is the adapter message.
In XI this is how the structure looks like
env:Envelope
xmlns:
env:Header
env:Body
But when the client receives it from the adapter she gets it as,
SOAP:Envelope
xmlns:
SOAP:Header
SOAP:Body
SOAP:Envelope
xmlns:
env:Header
env:Body
As a result the client has not ben able to process the message.
Any suggestion please.
TIA
Ranjan
User | Count |
---|---|
93 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.