cancel
Showing results for 
Search instead for 
Did you mean: 

Any Way for HTTP Adapter Enhance or Replacement?

Former Member
0 Kudos

Hi Experts,

We have a requirement need some suggestion on the approach from you. Please kindly give any information.

Our Requirement:

It is a ABAP Proxy to Http synchronize scenario. PI sends the request data to Bank via HTTP adapter and get the response back to SAP system.

PI needs to send data to target server via HTTP POST method.

Question is:

In the request data. We need add some other information sentences before the XML payload. HTTP body is just like:

Version=0.0.1.0&TransCode=PAYENT&BankCode=102&GroupCIS=170290000013959&ID=cs01.y.1702&PackageID=201307250000003&Cert=&reqData=<?xml version=\"1.0\" encoding=\"UTF-8\"?><CMS><eb><pub><TransCode>PAYENT</TransCode><CIS>170290000013959</CIS><BankCode>102</BankCode><ID>cs01.y.1702</ID><TranDate>20130725</TranDate><TranTime>0951547123</TranTime><fSeqno>201307250000003</fSeqno></pub></eb></CMS>

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

We use java proxy to match our requirement in the end.

Closed the thread.

Answers (2)

Answers (2)

markangelo_dihiansan
Active Contributor
0 Kudos

Hello Kevin,

In the request data. We need add some other information sentences before the XML payload. HTTP body is just like:

Version=0.0.1.0&TransCode=PAYENT&BankCode=102&GroupCIS=170290000013959&ID=cs01.y.1702&PackageID=201307250000003&Cert=&reqData=<?xml version=\"1.0\" encoding=\"UTF-8\"?><CMS><eb><pub><TransCode>PAYENT</TransCode><CIS>170290000013959</CIS><BankCode>102</BankCode><ID>cs01.y.1702</ID><TranDate>20130725</TranDate><TranTime>0951547123</TranTime><fSeqno>201307250000003</fSeqno></pub></eb></CMS>

There is no way to dynamically build the prolog using HTTP Adapter. If you are sure that this value

Version=0.0.1.0&TransCode=PAYENT&BankCode=102&GroupCIS=170290000013959&ID=cs01.y.1702&PackageID=201307250000003&Cert=&reqData=

is a constant, then you just enter it in Prolog under XI Payload Manipulation.

Otherwise, you need to do as what Michal suggested.

You can refer to this blog, see HTTP POST Receiver

http://scn.sap.com/docs/DOC-29829

Regards,

Mark

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

>>>In the request data. We need add some other information sentences before the XML payload. HTTP body is just like:

you can use SOAP adapter to make an HTTP call and just use "remove envelope" check in the channel

and then you can put this payload in the mapping (using java mapping for example)

and this should work,

Regards,

Michal Krawczyk

Former Member
0 Kudos

Hi Michal,

Thanks for your reply. Because of different types of response message. And we also need to set some values to HTTP Header. So I want to use Java Proxy as an approach.

So could you give some suggestion on Java Proxy?

Thanks a lot.

Regards,

Kevin Song