on 01-27-2011 6:05 AM
Experts,
I am stuck with an issue while passing the Target URL dynamically.
The UDF required for this works just fine. I can see the Target URL in Dynamic Configuration header(The Key is TServerLocation) in SXMB_MONI but the request that I am sending is not reaching the web service.
Some posts have suggested to hard code the Target URL as http://.
Below is the error that I am getting when I hard the Target URL as http://:
<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>RecoverableException</code>
<text>com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/HTML
at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:453)
at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:131)
at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:834)
at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
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)</text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
When I hard code the Target URL as Test (any dummy value), the error that I get is different. (Detailed error shown below)
<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>RecoverableException</code>
<text>com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: no scheme
at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:453)
at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:131)
at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:834)
at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
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)</text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
I am on PI 7.0.
Any help in this regard is highly appreciated.
Best Regards,
Vijay
check this blog (Section 3): [Troubleshooting SOAP Message - XI|http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/5498] [original link is broken] [original link is broken] [original link is broken];
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Praveen,
I've already referred to this blog and have implemented it. But I don't see any changes in the response. Just fyi.., the scenario works fine if I put the web service URL in TARGET URL field in SOAP receiver adapter. I start getting the error only when I pass the URL dynamically.
Any other ideas please??
Thanks,
Vijay
Edited by: Vijaya Paidisetty on Jan 27, 2011 8:42 AM
Stefan/Abhishek,
The dynamic URL that I am passing in is correct. The URL that I'm passing dynamically, if I put (hard code) the same URL in the TARGET URL field, the scenario runs fine. And I can see the URL in DynamicConfiguration header in MONI which is correct. Anything else that is missing?? Pl let me know.
One more question.. I've implemented the section no. 3 in the blog [http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/5498] [original link is broken] [original link is broken] [original link is broken];...Is this configuration mandatory?
-Vijay
> I've implemented the section no. 3 in the blog .Is this configuration mandatory?
When you check "Don't use SOAP Envelope", then it might be necessary to change the content type.
If you do not check this field, then do not use this additional module.
Edited by: Stefan Grube on Jan 27, 2011 10:08 AM
Issue resolved... by doing this:
DynamicConfigurationKey key2 = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/SOAP", "TAuthKey");
...
conf.put (key2, "username");
In the advanced tab of the communication channel, set the flag "View Authorization keys", and then added "username" (user to access the dynamic target url) and the password (2 times).
That's it...
User | Count |
---|---|
87 | |
23 | |
11 | |
9 | |
8 | |
5 | |
5 | |
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.