on 08-29-2006 3:31 PM
I have configured a Receiver SOAP adapter for sending a cXML message to a vendor in no-soap, keep-headers mode. If I want to extend this to other vendors, I want to set the target URL at runtime. In order to do this, I am able to set the TServerLocation in the Mapping. But in the communication channel, I am not able to select this indicator. I am able to select the 'Use Adapter specific message attributes' and 'Variable Transport Binding' indicators but thats it. I am not displayed any form for selecting the target URL as the field to substitute during runtime. I am using SAP Basis 7.00 for the Adapter Metadata. Does anybody know a work around or patch I need?
Hello James,
I don't know whether this question is still open, but I have faced the same problem now, so here is my solution:
It is right, that the "Target URL" field has to be filled with some "dummy" value to be able to save+activate the communication channel.
In any other communication channels (e.g. like file adapter) you can fill in the <dummy> value. But at the SOAP receiver it doesn't work.
Instead of <dummy>, if you fill in a real URL address, it will always take it instead of the dynamic one.
My solution is, to fill in only the "http://" value, and it will take your dynamic URL from your UDF. (from the variable TServerLocation)
I hope it helps!
Best regards,
Andras
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hi,
- Use Adapter-Specific Message Attributesindicator
- Variable Transport Binding indicator
are enough for this to work
you can test your scenario
Regards,
michal
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Michal,
Thanks for the prompt reply. I tried this. In the dynamic configuration under message monitor it is showing the URL being populated for TServerLocation. But in the communication channel if I put a dummy URL in the main URL field (so as to force it to take the dynamically assigned) it fails. Apparently it is still looking at the static URL.
Thanks
hi,
it fails with what error ?
what error do you see in:
http://server:port/MessagingSystem/monitor/monitor.jsp
when the soap call is made?
Regards,
michal
The status goes to waiting where it keeps trying to connect and finally fails. The error message is:
Error Exception caught by adapter framework: no scheme
Error Delivery of the message to the application using connection AFW failed, due to: no scheme
I have given the static url as "*" as I thought it should be any dummy.
We are on Basis 7.00 service pack 7. The comm. channel does not display any check boxes related to entering header field variables. Is it that we can set them directly in the mapping instead of before we had to set the fixed variable in the mapping (like HeaderOne) and then put the required header variable to map to in the form box so that we could at a time set maybe 6 variables.
Bhavesh,
No. The only option I see is for the Transport Binding. I have selected that too (though not sure if it is related). I can see that TServerLocation is set to my required URL dynamically but how to make the comm. channel look at this variable rather than the static field (which is mandatory so I have to enter some dummy).
User | Count |
---|---|
91 | |
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.