cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP Sender side error

Former Member
0 Kudos

Hi experts,

I am trying to post data from external system to XI. while posting i am getting below error but i am able to see sucessfull message in XI message monitoring. my scenario is asynchronous.

Error message is

The one-way operation returned a non-null message with Action=''."

plz let me know the problem what can do to over come this

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

SOAP is for sync scenario...if u r using it for asysc ..then choose QoS as "Exactly Once" in communication channel

then it will not give u error in sxmb_moni.

regards,

Manisha

Former Member
0 Kudos

HI manish,

I choosen Exactley once in Message interface and in communication channel also.

my receiver channel is Proxy. can i do any changes in this?

Thanks

Srini

Former Member
0 Kudos

Hi,

Just now i have done with this scenario.

Web service to Proxy Async

But i have choose Best Effort as QoS...it is giving error in XI but successfully executed and executed proxy successfully

when i choose Exactly once as QoS....it is not working for me and giving error in sxmb_moni and not even executing proxy..

so finally i choose Best Effort.

For proxy, i have used XI adapter at receiver side and specified RFC destination of type H..addressing mode as HTTP destination...RFC destination of Type H is created in XI for R/3 system..

target host is R/3 server...path prefix is /sap/XI/engine/?type=entry..and metion client, userid and pwd for same and test connection it gives 500 status.

For SOAP - file...Exactly once is working fine

regards,

Manisha

Former Member
0 Kudos

Hi,

where can i check my Receive proxy is SYN/ASY ? What is the TRCODE?

But i give receiver MI is EO(exactly once).

thanks

Srini

Former Member
0 Kudos

Hi,

U must be creating ABAP proxy using Sproxy tcode for service interface...so ur proxy will have properties of ur service interface.

regards,

Manisha

Former Member
0 Kudos

Hi manisha,

In properties tab i am not able to see any message processign mode.

where it is exactly plz can u tell me step by step..

Thanks

Srini

Former Member
0 Kudos

Proxies are always asynchronous.

In ESR/IR: did you define a response and/or fault message for the SOAP interface? Did you define the interface as synchronous? If so define it as asynchronous and try again with QoS=EO

This may be the cause of the error produced in SXMB_MONI, because sender expects a response but receiver will not deliver a response because of its asynchronous "nature" ...

Regards,

Volker

Former Member
0 Kudos

Hi Volker,

proxy also can be synchronous ..it depends on ur scenario.

Hi Srinivas,

let me tell u everything in detail:

In ID,

1..create CC for soap sender ->HTTP security level : HTTP

interface name : Outbound interface name

QoS : Exactly once

2...create CC for XI receiver ->

message protocol : XI3.0

Adressing type : HTTP destination

HTTP destination : RFC of type H created on XI to connect R/3 system

I assue tht ur this RFC is working fine.

What else u want to know?

if ur outbound interface is async then ur proxy will be async..see in IR.

Regards,

Manisha

Former Member
0 Kudos

Hi Volker

In IR i didn't define Reaponse and fault messages bcz my scenario is Asynchronous.

I given QOS is = EO only.

My client has posted the data using i provided webserivce. through this i am getting sucessful message in SXMB_MONI.

but while they are posting thair system is Expecting response from my receiver system. but here my receiver system is Asynchronous only. ( even this MI also Asy...)

thanks

Srinivas

former_member200962
Active Contributor
0 Kudos
but while they are posting thair system is Expecting response from my receiver system. but here my receiver system is Asynchronous only. ( even this MI also Asy...)

if the sender system is expecting a response how are you handling that part...the client might have configured the interface thinking that it is a synchronous call to XI.....but in XI your MI is Async....so this is causing the problem.....

Former Member
0 Kudos

Hi!

If I understand you correct the (remote) sender system expects a synchronous response while your scenario is asynchronous.

2 Options:

1. Tell these guys to send you a asynchronous SOAP request

2. In your XI make use of ccBPM and implement a so-called sync-async bridge where you can receive a synchronous message, process it asynchronously and send the requestor back a synchronous (pseudo) response. I've also had such a scenario in the past and for me this was the solution, because the sender side said, they can only send synchronous messages and because of their business process / technical design they NEED a response.

Regards,

Volker

Former Member
0 Kudos

Hi Abhi,

if the sender system is expecting a response how are you handling that part..

for this how can handle this part pease can you explain step by step.

In Xi my scenario is Asychonous and receiver Proxy also Asynchronous.

How can i handle this please tell me.

Thanks

Srinivas

former_member200962
Active Contributor
0 Kudos
but while they are posting thair system is Expecting response from my receiver system. but here 
my receiver system is Asynchronous only. ( even this MI also Asy...)

This is the catch.....

Check if your Receiver system can be configured to send the response in a separate asynchronous communication flow (as you say the receiver is async) you will have to make sure that the receiver is configured in such a way that it sends response for a particular message flow from Sender....also it should have some identification in the response message which will help the original sender in correlating the request and response

Here you can have the option of implementing BPM.....can even be implemented without BPM.

Source --- XI --- Target.........................Part1

Target -


XI --- Source........................Part2

What if the Receiving system could not be configured to send a response....then XI will have to send back a response message....

In such a case you will have to create a scenario which will be having the following flow:

Source ---> XI ---> Source ......both sending and recieving systems will be the same

So your entire flow will look like:

Source ------------- XI -----------------Target
           |------------- XI ---------------- Source

Source message will be the same...even sender agreement will be the same.....just that in XI the branching wil happen....

Entirely depends if your receiver system is ready to send the response or not....

Can you tell me is it the response that you need to send back or is it the Ack (Success or failed) that you need to send back??

Regards,

Abhishek.

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

How your external system communicating with XI ? Do you generated webservice in XI and consumed in external system .

If it is asynchronous scenario ensure you selected Exactly Once in Quality of Service.

Regards,

Prakash

Former Member
0 Kudos

Hi,

Yes, I generated web service in XI and consumed in external system.

yes, i selected Exactly Once only (in message Interface and CC).

may i know what is the problem.

Thanks

Former Member
0 Kudos

Hi,

Yes I generated webservice in XI and consumed in external system.

Yes, I given Exactly once in Message interface and soap communication channel.

My receiver is proxy can do any change in this.

plz tell me what is the problem and how to overcome this