cancel
Showing results for 
Search instead for 
Did you mean: 

Dynamic Configuration of HTTP Destinations in SOAPReceiver

Former Member
0 Kudos

Dear PI Developers

I'll define a dynamic Configuration for my HTTP Destination in SOAPReceiver with XI3.0 Protocol.

The solution for that is to use an Adapter Module to set the dynamic Configuration Value.

Process: ... > SOAP Receiver > MyAdapterModule, set HTTP Destination > SOAP Receiver, send Message to HTTP Destination

URL-Adressing work's fine

This works fine for URL-Adressing, here's my Java Code from my Adapter Module:

Message message = (Message) inputModuleData.getPrincipalData();

message.setMessageProperty(new MessagePropertyKey("TServerLocation", "http://sap.com/xi/XI/System/SOAP"), "http://domain.com/foobar");

HTTP Destination, how it works?

If I'll use HTTP Destination as Adressing Type but the HTTP Destination will not set.

I think the "TServerLocation" Property don't work for the HTTP Destination, but I don't find a Property in:

Configuring the Receiver SOAP Adapter - Advanced Adapter Engine - SAP Library

My Questions

Did someone know the coresponding property name for HTTP Destinations instead of "TServerLocation"?

Are there other Solutions to set the HTTP Destination dynamicaly, for Example with variables %my_http_dest% ?

How can I set my own variables %my_http_dest% in my Adapter Module?

Background

We have a lot of Destinations and a lot of Szenarios and won't create a SOAPReceiver and Routing for each Destination in each Szenario.

The Destination depends on a HTTP Header Parameter from Sender, I'll map this Parameters to the coresponding HTTP Destination in the Adapter Module, that's the same Mapping for all Scenarios. To keep the performance, I cache this Routing Table in the Adapter Module.

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi, there's no Attribute for "HTTP Destination" in the range of DynamicAttributes:

The only way is to use a variable to set the "HTTP Destination" dynamically.

Did someone know, how I set a variable in my Adapter Module?

Former Member
0 Kudos

Here's a way to misapplay "mesage:{var}" variables:

But it is a dangerous solution, I think we use URL-Adressing in place of HTTP Destination