cancel
Showing results for 
Search instead for 
Did you mean: 

Build complex message within graphical mapping

Former Member
0 Kudos

Hello,

we have a required were we need to build a complex output structure based on a single graphical mapping.

Based on the incomeing message I need to call a web service within the mapping. The result of the web service then needs to be compared to the incomeing message. If the result of the message is included in the response of the webservice the related complete structure needs to be copied to the response payload.

How can I create a complex return structure for a whole message within on graphical mapping?

The return message looks like this:

In the mapping I currently only retune single values and don't know how to return a whole message:

regards

Christian

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hello to all,

I have found a suitable version useing a complete java mapping and JAXB:

http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/02/07/forget-sax-and-dom-java-mapping-j...

With this approach the mapping is working. Thanks for your input.

regards

Christian

Answers (2)

Answers (2)

former_member181985
Active Contributor
0 Kudos

Hi Christian,

Your requirement bit not clear for me. Could you rephrase your question in this way,

incoming Message  --> call webservice (from mapping) --> webservice reponse (receive into mapping)

etc..

//BR,

Praveen Gujjeti

Former Member
0 Kudos

Hello Praveen,

let me try to make it a little bit clearer:

Incomeing message (Cointaining x - fields with customer information)

->

Call java mapping. In this mapping I take some information of the incomeing payload an call a webservice to get a new result list. I compare this result list against the message of the incomeing message (with which I called the mapping). Every entry that exists in both list is used to create the output structure (e.g. customer nr, sales area and so on.)

->

The result of the mapping should create the whole xml message of the response message type (This the pain point)

The message is then taken to call a SOAP-message in the integration directory with a "normal" communication channel.

I hope, that my question has got a bit clearer to you

regards

Christian

former_member181985
Active Contributor
0 Kudos

Hi Christian,

Yes, I think I got you now. You could achieve this with a java mapping

Create Java Mapping which picks necessary information from incoming message and then form intermediate required message request for webservice call . Once you get back the webservice response, compare this response with original incoming with all types validation (as per requirement) to form required message target system

And the same you could also achieve with this blog concept:

instead of creating java mapping externally

Best Regards,

Praveen Gujjeti

Former Member
0 Kudos

Hi Christian,

  Which version of PI are you using? I suggest you go for BPM approach if you are still using dual stack.

Regards

Charan

praveen_sutra
Active Contributor
0 Kudos

hi Christian,

you can use UDF for the same.

Whole Payload to a XML field - Process Integration - SCN Wiki

or alternatively.

Please check below blog to return entire xml in single field.

Hope  this helps.

thanks and regards,

Praveen T

Former Member
0 Kudos

Hello Praveen,

my requirement is the opposite. I have called the mapping for one target node and need to build all the other nodes of this message within the UDF.

regards

Christian