cancel
Showing results for 
Search instead for 
Did you mean: 

dynamically pass parameter in SOAP adapter

Former Member
0 Kudos

Hi,

I have 2 scenarios running one after the other (proxy to SOAP)

from first scenario I am getting a URL and session id, that URL I need to pass in second scenario SOAP adapter (in target)

and session id to mapping of second scenario.

Please guide me in this.

Thanks,

Krishna..

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

Thanks to all of you.

Regards,

Krishna Chauhan

former_member200962
Active Contributor
0 Kudos

is your scenario(s) like PROXY -->X and X/ Y --> SOAP and you have to pass details received from PROXY to SOAP? If yes then you need to have a BPM which will held the PROXY value till it goes to SOAP.

A bit confused about the flow....more information needed!

Regards,

Abhishek.

Former Member
0 Kudos

Hi Abhishek,

Thanks for your reply,

In soap receiver adapter we have something called 'adapter specific attributes', this can be done through this,

can you please guide me in respect of this, how to make an UDF for this scenario.

URL I will be passing through proxy.

Thanks,

Krishna

former_member200962
Active Contributor
0 Kudos
In soap receiver adapter we have something called 'adapter specific attributes', this can be done through this,
can you please guide me in respect of this, how to make an UDF for this scenario.
URL I will be passing through proxy.

Ok, so you just need to assign the Target URL dynamically.....these are not two different scenarios.....just one scenario

The UDF logic is really simple and available on SDN....so just make a search for it. In the Receiver SOAP channel you enter any words in The Target URL section (even your name will be enough).......also in the SOAP channel check the ASMA checkbox....test the Scenario end-to-end.

Keywords for Search will be Dynamic Configuration or TServerLocation

Regards,

Abhishek.

Former Member
0 Kudos

Hi,

I search for the UDF, it is as follows:

//Get the dynamic configuration from the container

DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);

//Create the TServerLocation key in namespace http://sap.com/xi/XI/System/SOAP. This key will hold the dynamically created URL

DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/SOAP", "TServerLocation");

//Put the url value from the input in the configuration under the specified key

conf.put(key, url);

//return the data for mapping to the output

return data;

But, still error coming with Java, can you help me some more.

Thanks,

Krishna

former_member200962
Active Contributor
0 Kudos
But, still error coming with Java, can you help me some more.

Your Code looks good....

SourceNode --> UDF --> Any TargetNode

The SourceNode should be the one contaning the TargetUrl vale and then it will correspond to the url parameter of your UDF.

Do not Test the mapping in IR.....you have to run the scenario end-to-end!

Regards,

Abhishek.

Former Member
0 Kudos

Hi,

Well I am able to pass soap action dynamically and it is working fine, but when I am passing URL dynamically through TServerLocation,

it is not triggering the webservice.

In sxmb_moni it is showing in the adapter configuration that the URL is passed, but the out put is not coming.

In variable transport binding I am passing both TServerLocation, THeaderSOAPACTION.

Do I need to do some thing more.

Thanks & Regards,

Krishna