cancel
Showing results for 
Search instead for 
Did you mean: 

Adding header details in payload

Former Member
0 Kudos

Hi Experts,

I'm working with a scenario which includes the flow as below:

3rd party - (IBM MQ) JMS - RFC (SAP PI -SAP - SAP PI)-  JMS (IBM MQ) -3rd party system.

We have implemented Async-sync bridge for this JMS-RFC-JMS scenario.

3rd party system is expecting a XML file as below:

PI is generating an XML as below:

Is it possible to generate XML required by 3rd party system from PI?

please suggest.

Seems Soap envelop to be added to payload.

Thanks

Manaswitha

Accepted Solutions (0)

Answers (4)

Answers (4)

former_member186851
Active Contributor
0 Kudos

Header can be added using XSLT or Java Mapping

raviteja_satuluri
Contributor
0 Kudos

Hi Manaswitha,

The axis adapter comes with a convenient header insertion handler where you can insert an arbitrary header using a template.


Please check the below links i hope it may useful to you.


How to add a soap header in the mesage, XSLT | ABAP, SAP,&nb...

Regards,

Teja.

raviteja_satuluri
Contributor
0 Kudos

We can achieve this either Using XSLT or JAVA Mapping.

It is possible to add header or remove header using XSLT Mapping.

Regards,

Teja.

Former Member
0 Kudos

Hi Teja,

We can add Soap Header through XSLT mapping.

please let me know how we can add JMS header properties ?

I'm able to receive JMS properties by setting Adapter Specific message Attributes in SAP PI.

But while sending to receiver JMS through Async/sync bridge , Need to change values of DCJMSMessageProperties in SOAP header .

Please let me how we can change DCJMSMessageProperties values in SOAP header

Thanks

Manaswitha.

iaki_vila
Active Contributor
0 Kudos

Hi Manaswitha,

In my opinion the main problem that you have is you will need a plain payload because you have a mix with plain data and XML data.

I'm going to suggest a possibility, perhaps a bit complicated, may be someone had a better approach,

You can use the MessageTransformBean to get a text plain like the example in the final of this wiki:

How To...Content conversion module with J2EE JMS adapter - Process Integration - SCN Wiki

The tricky thing is that you need to have a XML first. You can change the XML before come to receiver adapter in order to have two tags, in the first tag you can have your header details to add; and in the second tag you can have all your original payload, but you will need to wrap this part with a CDATA section to get the receiver adapter takes this second tag value as string and don't try to interpret its content.

Regards.

Former Member
0 Kudos

Hi Inaki,

The plain data in the message is JMS header details. These are populating as DCJMSMessageProperties in SOAP header Dynamic configuration file when ASMA attributes are selected in JMS Sender channel..

Please let me know , if we can change those attributes while sending to JMS receiver .

Thanks

Manaswitha.