cancel
Showing results for 
Search instead for 
Did you mean: 

RFC Sender -> HTTP receiver

Former Member
0 Kudos

Hi all,

my scenario is the following :

BAPI -> XI -> HTTP

In my understanding, if I have a BAPI as sender, my scenario has to be synchronous. Is it correct ?

The BAPI sends Purchase Orders. When we send one, everything seems OK on the sender side.

In XI, I can see 2 messages (processed at the same second) in the adapter monitoring (in RWB). One is going from the Sender service to the receiver, the other one is going the other way. The interface is the BAPI for both of them.

But the problem is I don't see any XML message in SXMB_MONI, and the supplier doesn't receive anything on its HTTP server.

So finally, I have no error message and almost nothing to monitor.

Anyone has an idea of what's happening ?

Thank you very much in advance.

Best ragards,

Julien

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

go to sxmb_adm -> configuration -> specific configuration-> add a new entry

of type runtime , LOGGING_SYNC and set its value to one.

by default synchronous interface messages are not logged

naveen

Former Member
0 Kudos

Thank you Sameer and Naveen.

I changed my HTTP receiver adapter fo file adapter and now I can see 3 messages per PO sent in SXMB_MONI. 1 coming from SRM, 2 coming back. The status of the first one is "Log version" (what does this mean ?), and the 2 last messages are in error (category MAPPING, error CANNOT_READ_PAYLOAD). I imagine that is because the file adapter does not send back any acknowlegment and the synchronous scenario needs one.

Naveem, I added 5 parameters in SXMB_ADM :

LOGGING, LOGGING_SYNC, LOGGING_PROPAGATION, TRACE_LEVEL (3) and TRACE_LEVEL_PROPAGATION.

Now I can see every step of the pipeline in SXMB_MONI but I still can't see the payload of the messages after the step "Receiver Identification" (the message is "The XML page cannot be displayed").

Thanks for your answers.

Regards,

Julien

Former Member
0 Kudos

Hi Julien

"The status of the first one is "Log version" (what does this mean ?)"

It means that this message version was generated by logging and does not have a particular status.

"category MAPPING, error CANNOT_READ_PAYLOAD"

Yes your reason is right, your RFC waits for a response and your file adapter cannot send any response.

"the message is "The XML page cannot be displayed")"

We had a similar problem and we did a CPACache refresh and it worked for us, try doing a CPACache refresh. Not sure of the reason as to why it solved our problem but. You can do a CPACache refresh by entering the following url in your browser,

http://XIServer:50000/CPACache/refresh?mode=full

hope it helps

cheers

Sameer

Former Member
0 Kudos

Hi Sameer,

I don' have the authorization for this. I asked the admin, wait and see...

Now I put my HTTP receiver adapter back instead of the file adapter, and I can see 2 messages per PO in SXMB_MONI, both marked as "Message Processed".

Unfortunately, I am almost sure that the supplier HTTP site did not received anything, because the messages back and forward are processed at the same second. Too fast for an internet transaction isn't it ?

So my question is : How can I monitor what is sent thru the HTTP adapter ? I am not even sure that the XML is going to the URL I gave in the HTTP adapter.

Regards,

Julien

Former Member
0 Kudos

Hi Julien

In your addressing type of your receiver http adapter, choose HTTP Destination.

But before doing this go to your XI Server, tcode sm59, and create a 'HTTP Connections to Ext. Server', by passing in target host, service no and path prefix. Test the connection. Next enter this RFC Destination in your HTTP Destination in your receiver HTTP adapter and now run your scenario.

regards

Sameer

Former Member
0 Kudos

Hi Sameer,

here is what I get in SXMB_MONI when I look at the response message. Does it look OK to you ? Do you think the supplier server received something and answered ?

Regards,

Julien

<Trace level="1" type="T">----


</Trace>

<Trace level="1" type="B" name="CL_HTTP_PLAIN_OUTBOUND-ENTER_PLSRV" />

- <!-- ************************************

-->

<Trace level="3" type="T">Quality of Service BE</Trace>

<Trace level="1" type="T">Get XML-Dokument from the Message-Objekt</Trace>

<Trace level="2" type="T">HTTP-Destination : TEST_HTTPS</Trace>

<Trace level="3" type="T">Server mySupplierServer.com</Trace>

<Trace level="3" type="T">Service-Nr. 80</Trace>

<Trace level="3" type="T">URL /path/onthe/supplier/server</Trace>

<Trace level="3" type="T">~request_method POST</Trace>

<Trace level="3" type="T">~server_protocol HTTP/1.0</Trace>

<Trace level="3" type="T">accept: /</Trace>

<Trace level="3" type="T">content-type: text/xml</Trace>

<Trace level="3" type="T">msgguid: 95EC6911407911DAA91F000802E0AD3E</Trace>

<Trace level="3" type="T">service: D41_SRM</Trace>

<Trace level="3" type="T">interface namespace: http://www.mynamespace.com/</Trace>;

<Trace level="3" type="T">interface name: MI_XCBL35_IN</Trace>

<Trace level="3" type="T">Header-Fields</Trace>

<Trace level="3" type="T">Prolog conversion Codepage: UTF-8</Trace>

<Trace level="3" type="T">Epilog conversion Codepage: UTF-8</Trace>

<Trace level="3" type="T">content-length 115</Trace>

<Trace level="2" type="T">HTTP-Response :</Trace>

<Trace level="1" type="T">OK</Trace>

<Trace level="2" type="T">Code : 200</Trace>

<Trace level="2" type="T">Reason: OK</Trace>

<Trace level="2" type="T">HTTP-response content-length 703</Trace>

Message was edited by: Julien LATOURNERIE

Former Member
0 Kudos

Hi Julien

Trace level="2" type="T">Code : 200</Trace>

Code 200 means request has succeeded.

Also 'HTTP-response content-length 703'

The response has a content length of 703, so something has been sent back as well.

cheers

Sameer

Former Member
0 Kudos

Hi Sameer,

hum so the supplier would be lying to me when he says that he didn't receive any PO ?

Maybe I can find more precise log about the HTTP connection in the ICM trace file...

Cheers,

julien

Former Member
0 Kudos

Hi Sameer,

the admin did the CPACache refresh, and I stil can't see many of the payloads.

The ICM trace was no treally helpful either...

For those who already configured this Web PO scenario, how did you test it ? Did the supplier immediately see the PO you sent ? Maybe there is a problem in the structure I send...

This scenario already existed with Business Connector and they where using XCBL 3.5, so I took the order.xsd file from the XCBL library.

Cheers,

Julien

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Julien

We are working on a similar scenario, and it works fine.

If you have configured everything, right from mapping for request and response, to configuring your RFC and HTTP adapter, you should have no problem.

Check if you can view the XML messages for other scenarios on your SXMB_MONI, sometimes the SXMB_MONI monitor behaves in a funny way, and rebooting your system will make the messages to be displayed again.

cheers

Sameer