on 04-03-2006 5:02 PM
Hi,
I am working on a scenario where a SOAP Client ( XMLSPY) sends a request to XI and XI forwards it to a web service and returns the result back to Soap Client. I am using SOAP Adapter at outbound and inbound.
I have done the following steps:
1. imported the WSDL for the web service.
2. created MI based on the WSDL.
3. Configured the agreements and determinations.
4. Generated WSDL based on the configuration objects in ID.
5. Called my WSDL in XMLSPY client.
6. I am asked to login to the XI system.
7. I get an error message back in XMLSPY:
<?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>DeliveryException</code>
<text><![CDATA[
com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: QName is 'xmlns', but URI is not 'http://www.w3.org/2000/xmlns/' in the qualified name, 'xmlns'
at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:457)
at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:125)
at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:512)
at com.sap.engine.frame.core.thread.Task.run(Task.java:64)
at com.sap.engine.core.thread.impl5.SingleThread.execute(SingleThread.java:74)
at com.sap.engine.core.thread.impl5.SingleThread.run(SingleThread.java:141)
]]></text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
The message monitoring shows:
2006-04-03 11:37:37 Success SOAP: request message entering the adapter
2006-04-03 11:37:40 Success The message was successfully received by the messaging system. Profile: XI URL: http://diamond:50500/MessagingSystem/receive/AFW/XI
2006-04-03 11:37:40 Success Using connection AFW. Trying to put the message into the request queue.
2006-04-03 11:37:40 Success Message successfully put into the queue.
2006-04-03 11:37:40 Success The message was successfully retrieved from the request queue.
2006-04-03 11:37:40 Success The message status set to DLNG.
2006-04-03 11:37:40 Success Delivering to channel: SOAP_RECEIVER_ADAPTER
2006-04-03 11:37:40 Success SOAP: request message entering the adapter
2006-04-03 11:37:42 Error SOAP: error occured: org.w3c.dom.DOMException: QName is 'xmlns', but URI is not 'http://www.w3.org/2000/xmlns/' in the qualified name, 'xmlns'
2006-04-03 11:37:42 Error Exception caught by adapter framework: QName is 'xmlns', but URI is not 'http://www.w3.org/2000/xmlns/' in the qualified name, 'xmlns'
and it also shows:
Time Stamp Status Description
2006-04-03 11:37:37 Success SOAP: request message entering the adapter
2006-04-03 11:37:40 Success The message was successfully received by the messaging system. Profile: XI URL: http://diamond:50500/MessagingSystem/receive/AFW/XI
2006-04-03 11:37:40 Success Using connection AFW. Trying to put the message into the request queue.
2006-04-03 11:37:40 Success Message successfully put into the queue.
2006-04-03 11:37:40 Success The message was successfully retrieved from the request queue.
2006-04-03 11:37:40 Success The message status set to DLNG.
2006-04-03 11:37:40 Success Delivering to channel: SOAP_RECEIVER_ADAPTER
2006-04-03 11:37:40 Success SOAP: request message entering the adapter
2006-04-03 11:37:42 Error SOAP: error occured: org.w3c.dom.DOMException: QName is 'xmlns', but URI is not 'http://www.w3.org/2000/xmlns/' in the qualified name, 'xmlns'
2006-04-03 11:37:42 Error Exception caught by adapter framework: QName is 'xmlns', but URI is not 'http://www.w3.org/2000/xmlns/' in the qualified name, 'xmlns'
The message I am sending to the XI is :
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<m:VerifyAddress xmlns:m="http://www.webservicex.net">
<m:City>Plano</m:City>
<m:State>TX</m:State>
<m:Zip>75024</m:Zip>
</m:VerifyAddress>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
There is some URI conflict in both the adapters. They expect some URI format which it is not getting. I dont understand where the problem is.
Can anyone help?
Thanks,
Shubha.
Hi Shubha,
This is a known bug.
Apply the latest patch.
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,
I think namespace in the URL is conflicting somewhere.
Just check with this blog-
/people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
/people/siva.maranani/blog/2005/03/01/testing-xi-exposed-web-services
/people/sap.user72/blog/2006/01/16/xi-propagation-of-meaningful-error-information-to-soap-client
Hope this helps,
Regards,
Moorthy
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
24 | |
12 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.