cancel
Showing results for 
Search instead for 
Did you mean: 

PI 7.11 – Sync HTTP Receiver Adapter With Response XML File

ronnypol
Explorer
0 Kudos

Hi

We have a File to HTTP scenario in which we need a sync HTTP interface. We send a file to the HTTP address and receive a XML acknowledge. As I read in this forum: sync HTTP interfaces are not possible with the “standard” HTTP adapter. So I found an entry which recommended to use the SOAP adapter instead.

I configured it:
- Do Not Use SOAP envelope
- modules: RequestResponseBeans, CallSapAdapter, ResponseOneWayBean

If i use this scenario, i get following error in the RWB – Message Display Tool:
Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.SAP.engine.interfaces.messaging.api.exception.MessagingException: Java.lang.NullPointerException: while trying to invoke the method com.SAP.engine.interfaces.messaging.api.Message.getMessageId() of an object loaded from local variable ‘message1′.

I testet this scenario using CURL and it worked properly. Should this kind of scenario work with the SOAP adapter or do I need to buy/develop an own adapter? Is in NW7.3 possible to configure sync HTTP scenarios?

Accepted Solutions (1)

Accepted Solutions (1)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Both HTTP and SOAP adapters support sync communication. There are plenty of SDN links available for HTTP sync scenarios.

if you are expecting HTTP response to write it in a target file as XML response then you are doing async sync pattern without BPM. In this case you need to use requestResponse and one way response bean in the sender file adapter not in HTTP adapter

Refer this link

http://wiki.sdn.sap.com/wiki/display/XI/File-RFC-File(Without%20BPM)

Instead RFC use your http and for file the same.

Answers (2)

Answers (2)

Shabarish_Nair
Active Contributor
0 Kudos

As I read in this forum: sync HTTP interfaces are not possible with the “standard” HTTP adapter.

>>>

A bit surprised as this is not true. The HTTP adapter supports BE QoS and thus can be used for sync scenarios.

So I found an entry which recommended to use the SOAP adapter instead.

>>>

Yes. You can at times use SOAP adapter to replicate the functionality of the HTTP adapter. You will need to disable the SOAP envelop as one of those steps.

Also as Mike mentioned, remove the beans as they are used in a Async -> Sync -> Async or Sync -> Async -> Sync scenarios.

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

>>>>- modules: RequestResponseBeans, CallSapAdapter, ResponseOneWayBean
there is no need to use request response beans - SOAP adapters works in sync mode in standard

so please remove those and try posting a normal sync message

>>>>As I read in this forum: sync HTTP interfaces are not possible with the “standard” HTTP adapter.

sync interfaces are possible with HTTP adapter

Regards,

Michal Krawczyk