cancel
Showing results for 
Search instead for 
Did you mean: 

How to test HTTP file?

Former Member
0 Kudos

Hi all,

I have a simple senario to test HTTP file.

I want HTTP file to be written into XI as a file.

Can anyone tell me the steps involved in this?

I have created a HTTP service as sender with HTTP as communication channel, sender message interface.

Is there anything I have to fill in receiver tab?

I have the XI as business system receiver with file communication channnel.

How about the sender message interface for HTTP, should it be ASYNC, ABSTRACT?

I created the receiver determination, interface determination, receiver agreement.

Am I missing anything?

I appreciate your response.

Regards,

felix.

Accepted Solutions (0)

Answers (1)

Answers (1)

VCUNTHEE
Participant
0 Kudos

Hi Felix,

If it is a http request coming in to XI then it has to be in XML format. This XML payload has to be posted in the XI using an URL format. Format is given in the link below.

Once the data is in XML format then a smiple message mapping can help you get the desired text file.

Note:

The following link form "sap help" would guide you in a great way in using http adapter.

http://help.sap.com/saphelp_erp2004/helpdata/en/bd/ec25443b19f848aa46e81487ec56ff/frameset.htm

Good luck,

Vedavyas

Former Member
0 Kudos

Hi Vedavyas,

I need to simply test HTTP adapter.

Can you please tell me the minimum required objects that I should create.

I have a JAVA file calling data in a XML file.

Should I create a business serive(sender) with HTTP as communication channel?

Should I create a business system(receiver) with communication channel as FILE?

How about the messaage interface settings for sender and receiver? Is it ABSTRACT ASYNC in both the cases?

I appreciate your help.

Regards

felix.

stefan_grube
Active Contributor
0 Kudos

Hi Felix,

> I need to simply test HTTP adapter.

>

> Can you please tell me the minimum required objects

> that I should create.

>

> I have a JAVA file calling data in a XML file.

>

> Should I create a business serive(sender) with HTTP

> as communication channel?

Create a Business Service or Business System for the Sender. A communication channel is not necessary for HTTP.

>

> Should I create a business system(receiver) with

> communication channel as FILE?

Yes. For testing you can choose Business Service in both cases.

> How about the message interface settings for sender

> and receiver? Is it ABSTRACT ASYNC in both the

> cases?

Outbound Async for HTTP call, Inbound Async for File. Abstract messages are used only within BPM.

You need a receiver determination, interface determination and a receiver agreement to make your scenario run.

Stefan

Former Member
0 Kudos

Hi Stefan, I configured the way you have put it, but I get the error "no receiver could be determined"

Here are my settings:

Sender service - HTTP_SEND

sender o/b interface - PROD_MSG_INT_OB_ASYNC

receiver service - FILE_RECEIVE

receiver i/b interface - PROD_MSG_INT_IB_ASYNC

receiver communication channel - FILE adapter

JAVA script:

String Party = "MFC";

String Service = "HTTP_SEND";

String XINameSpace = "mfc%3Anamespace1";

String Interface = "PROD_MSG_INT_OB_ASYNC";

String Url = "http://nemo:8000/sap/xi/adapter_plain?";

XML DATA File:

<?xml version="1.0" encoding="UTF-8"?>

<ns0:PRODUCT xmlns:ns0="mfc:namespace1">

<ID>E</ID>

<NAME>thank god</NAME>

<BRAND>SOME BRAND</BRAND>

</ns0:PRODUCT>

Stefan Am I missing anything?

XML error message:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

- <!-- Receiver Identification

-->

- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

<SAP:Category>XIServer</SAP:Category>

<SAP:Code area="RCVR_DETERMINATION">NO_RECEIVER_CASE_BE</SAP:Code>

<SAP:P1 />

<SAP:P2 />

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:ApplicationFaultMessage namespace="" />

<SAP:Stack>No receiver could be determined</SAP:Stack>

<SAP:Retry>N</SAP:Retry>

</SAP:Error>

It would be great if you have solution for this.

Regards

felix

Former Member
0 Kudos

Hello Felix,

I think you are missing the Quality of service. in your case the system is taken 'BE' (Best effort)

There is a certain way how to post an HTTP request to XI integration server (and I am sure that the quality of service is part of it).

I hope this will help.

Mustapha.

stefan_grube
Active Contributor
0 Kudos

You have to apply Sender Service, Interface and Namespace in the URL:

"http://nemo:8000/sap/xi/adapter_plain?namespace=YourNamespace&interface=YourInterface&service=YourService&QOS=EO"

Regards

Stefan

Former Member
0 Kudos

Stefan,

Yes you are right, now when I included QOS=EO, the JAVA file is connected with XI server with code 200.

But When I look into XI monitor, now it is not in red flag, but receiver column is empty, showing no receiver found error.

In my case, the receiver is a file service.

Sender: HTTP_SEND with o/b message

Receiver: FILE_RECEIVE with i/b message

I have the reciver,interface determination and receiver agreement.

I'm not sure what I'm missing?

Regards

felix.

stefan_grube
Active Contributor
0 Kudos

Check in the SXMB_MONI in the detail message view the SOAP Header 'Main'. Here you can see Sender Service, Interface and Namespace. Check if that entries are correct and corresponding to the entries in the Integration Builder Configuration.

If not, check the URL for the HTTP call.

Regards

Stefan

Former Member
0 Kudos

Stefan,

I didn't include party name in the file. Iincluded it now, It works. Thank you for notes.

I want to test the SYNC, I included QOS=BE, but I'm not getting the reply back. I really don't know what are the steps involved to reply to the sender. Could you please share your thoughts.

I appreciate your help.

Regards

felix.

stefan_grube
Active Contributor
0 Kudos

The file adpater connot send any reply back. If you want to test sync scenarios, use an RFC (BAPI) call for testing.

Regards

Stefan

Former Member
0 Kudos

Stefan, Thanks a lot for your respsone.

I'm trying with RFC adapter. What is the program ID I should enter. I know the gateway host and service id but not the program id. it is not there in R3 system(SM59). How to find the program id?

Thanks for your inputs.

Regards

felix.