cancel
Showing results for 
Search instead for 
Did you mean: 

Insert value from Request message to Response message using GetPayloadValueBean

former_member302452
Participant
0 Kudos

Hi Experts,

I have configured the module in Receiver soap channel. while i’m executing it's throwing error like "GetPayloadValueBean: Value cannot be null:" not able to find the exact functionality of the module “GetPayloadValueBean and PutPayload value bean”.

My scenario is like (file-soap-file) using Sync and Async bridge its works fine. In same scenario i want to use "GetPayloadValueBean".

Soap Receiver Channel:

In parameters value i tried with test double quotes also "test"

Error log:

I have used the below blog and created a scenario in 7.5 single stack

https://blogs.sap.com/2013/03/20/insert-value-from-request-message-to-response-using-getpayloadvalue...

Please help me if there is any configuration changes.

Thanks and Regards,

Md.Thouheed

former_member262051
Participant
0 Kudos

HI Mahammad,

Hope you resolved this issue.

Kindly let me know how did you resolve this issue as i am also stuck like you without having any clue.

Regards,

Naga Uday

Accepted Solutions (0)

Answers (5)

Answers (5)

former_member531736
Discoverer
0 Kudos

Hi Mohmmad,

you can use get://Req_No instead of get:/ns0:mt_req/Currency_ip/Req_No, it should work.

I have problem with PutPayloadValueBean, did you complete the scenario?

br

Domenico

manoj_khavatkopp
Active Contributor
0 Kudos

I just tried with Below XMl and it works fine for me , so i am suspecting either you are providing the wrong xml or the node is not there in the XML.

And also try to use a different module key for each module in your case , you are using "Payload" for all three module so try to use a unique module key for each one of them

When i delete the node in XML

Module Config:

XML which i tested:

<?xml version="1.0" encoding="UTF-8"?>
<ns0:mt_req xmlns:ns0="http://file2soapsync">
<Currency_ip>
<Req_No>1</Req_No>
<FromCurrency>INR</FromCurrency>
<ToCurrency>EUR</ToCurrency>
</Currency_ip>
</ns0:mt_req>
apu_das2
Active Contributor
0 Kudos

Please follow what Raghuraman and Manoj suggested.

Additionally, you need to mention requestresponsebean and responseonewaybean in sender CC not in receiver CC.

Thanks and Regards,

Apu

manoj_khavatkopp
Active Contributor

Not Necessarily they can be placed in reciever too.

manoj_khavatkopp
Active Contributor
0 Kudos

Hi Mohammad,

Check if you have any value in the XML for that particular field ?

Br,

Manoj

former_member302452
Participant
0 Kudos

Hi Manoj,

My actually scenario is like jdbc-soap-jdbc using sync and Async bridge, i created two ICO's :

1. ICO: JDBC(Async) to soap(Sync) here soap receiver channel we using this all bean's.

2. ICO: Soap(Asyn) to JDBC(Asyn)

Because there is no primary key to update the record to database so we planning to use this as a link between request and response. Not necessary for sending this to soap(webservice) again once coming back to response and add req_no field and send to receiver jdbc.

Is it work to use “GetPayloadValueBean and PutPayload value bean”.

Thanks and Regards,

Md.Thouheed

manoj_khavatkopp
Active Contributor
0 Kudos

Why not go with Dynamic Configuration Bean ?

I recently did a similar interface :

IDOC--->SOAP(RR Beans with Dynamic ConfigBean)

SOAP-->IDOC

former_member302452
Participant
0 Kudos

Thanks Manoj,

I will try, please share any reffernce blog are link its very help full.

manoj_khavatkopp
Active Contributor
0 Kudos

Refer this blog

former_member186851
Active Contributor
0 Kudos

Check if the XML is having value and also try removing parameter value for remove parameter.

Please share the sample XML if possible.

former_member302452
Participant
0 Kudos

Hi Raghuraman,

Sample XML payload:

<?xml version="1.0" encoding="UTF-8"?> <ns0:mt_req xmlns:ns0="http://file2soapsync"> <Currency_ip> <Req_No>1</Req_No> <FromCurrency>INR</FromCurrency> <ToCurrency>EUR</ToCurrency> </Currency_ip> </ns0:mt_req>

manoj_khavatkopp
Active Contributor
0 Kudos

Mohammad,

The xmlns parameter value is wrong which does not match with your xml you should have it as :

Parameter Name : xmlns

Parameter Value : xmlns:ns0="http://file2soapsync";

Br,

Manoj

former_member302452
Participant
0 Kudos

Hi Manoj,

Thanks for replying, but still its throwing error like MP: exception caught with cause com.sap.aii.af.lib.mp.module.ModuleException: GetPayloadValueBean: Value cannot be null: /p1:mt_req/Currency_ip/Req_No

I'm not getting any idea in parameter value which value i can pass there,now i'm passing "test" is it correct?

Thanks and Regards,

Md.Thouheed

manoj_khavatkopp
Active Contributor
0 Kudos

Can you please give the exact xml after your mapping because in the earlier reply i see you have ns0 as prefix and now i see p1.

former_member302452
Participant
0 Kudos

What i shared earlier sample XML Payload is exact only, now i'm taken Xpath in receiver determination.

After Mapping Sample XML Payload:

<?xml version="1.0" encoding="UTF-8"?> <ns1:ConversionRate xmlns:ns1="http://www.webserviceX.NET/"> <ns1:Req_NO>1</ns1:Req_NO> <ns1:FromCurrency>INR</ns1:FromCurrency> <ns1:ToCurrency>EUR</ns1:ToCurrency> </ns1:ConversionRate>

former_member186851
Active Contributor
0 Kudos

It worked ?Share the XML after mapping.

former_member190293
Active Contributor
0 Kudos

I'm not sure about PI processing behavour, but it seems to me that namespace prefix in XPath just should match the prefix in xmlns definition.

But Manoj is right. Try to use the same prefix as used in your actual XML payload.

Regards, Evgeniy.