cancel
Showing results for 
Search instead for 
Did you mean: 

Async interface is executing as Sync

Former Member
0 Kudos

Hi everyone!

I'm with a problem here, I've developed an Async SOAP x Proxy interface.

The Interface is not complex, the both Services Interfaces (in and out) in ESB were configured as Async. The Sender SOAP is configured as "Exactly Once", and thats it.


But when I run a test through SOAPUI, the interface is being executed as a Sync! When I look in SXI_MONI, the QoS that it shows is BE (best effort).

And then a Mapping Error happens .. but it is caused because a Response messaging is being fired.

I tried to refresh the cache, did the scenario again, and nothing.

Does anyone knows what I'm doing wrong?

Thks!

Accepted Solutions (1)

Accepted Solutions (1)

nipun_shedhani4
Explorer
0 Kudos

Eric,

If the proxy is based on your Service Interface definition, then it should be happening. However can you share the WSDL information.

I would check the Receiver SI mode (Assuming your integration is SOAP-->PI-->Proxy), and if required try to set it up with Fault Message Type and activate it again.

Former Member
0 Kudos

Hi Nipun.

I will try to set up a fault messsage.

Here is the WSDL:

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

<wsdl:definitions name="SI_PDA_Transferencia_Out" targetNamespace="http://roldao.com/pi/transferencia_estoque" xmlns:p1="http://roldao.com/pi/transferencia_estoque" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

  <wsdl:documentation/>

  <wsp:UsingPolicy wsdl:required="true"/>

  <wsp:Policy wsu:Id="OP_TransferenciaEstoque"/>

  <wsdl:types>

  <xsd:schema targetNamespace="http://roldao.com/pi/transferencia_estoque" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://roldao.com/pi/transferencia_estoque">

  <xsd:element name="MT_PDA_Transferencia" type="DT_PDA_Transferencia"/>

  <xsd:complexType name="DT_PDA_Transferencia">

  <xsd:annotation>

  <xsd:appinfo source="http://sap.com/xi/VersionID">af475d4e3dd511e4ac7b0000005fe43e</xsd:appinfo>

  </xsd:annotation>

  <xsd:sequence>

  <xsd:element name="TP_MOVMNTO" type="xsd:string" minOccurs="0"/>

  <xsd:element name="CENTRO" type="xsd:string" minOccurs="0"/>

  <xsd:element name="CODIGO_SAP" type="xsd:string" minOccurs="0"/>

  <xsd:element name="DETPO_ORIGEM" type="xsd:string" minOccurs="0"/>

  <xsd:element name="DEPTO_DESTINO" type="xsd:string" minOccurs="0"/>

  <xsd:element name="QUANTIDADE" type="xsd:string" minOccurs="0"/>

  </xsd:sequence>

  </xsd:complexType>

  </xsd:schema>

  </wsdl:types>

  <wsdl:message name="MT_PDA_Transferencia">

  <wsdl:documentation/>

  <wsdl:part name="MT_PDA_Transferencia" element="p1:MT_PDA_Transferencia"/>

  </wsdl:message>

  <wsdl:portType name="SI_PDA_Transferencia_Out">

  <wsdl:documentation/>

  <wsdl:operation name="TransferenciaEstoque">

  <wsdl:documentation/>

  <wsp:Policy>

  <wsp:PolicyReference URI="#OP_TransferenciaEstoque"/>

  </wsp:Policy>

  <wsdl:input message="p1:MT_PDA_Transferencia"/>

  </wsdl:operation>

  </wsdl:portType>

  <wsdl:binding name="SI_PDA_Transferencia_OutBinding" type="p1:SI_PDA_Transferencia_Out">

  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>

  <wsdl:operation name="TransferenciaEstoque">

  <soap:operation soapAction="http://sap.com/xi/WebService/soap1.1" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>

  <wsdl:input>

  <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>

  </wsdl:input>

  </wsdl:operation>

  </wsdl:binding>

  <wsdl:service name="SI_PDA_Transferencia_OutService">

  <wsdl:port name="SI_PDA_Transferencia_OutPort" binding="p1:SI_PDA_Transferencia_OutBinding">

  <soap:address location="http://192.168.0.35:50000/sap/xi/engine?type=entry&version=3.0&Sender.Service=BC_PDA&Interface=http%..." xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>

  </wsdl:port>

  </wsdl:service>

</wsdl:definitions>

former_member184720
Active Contributor
0 Kudos

Change the soap address location. I don't think that uses your sender channel as it hits integration engine.

use either of the below url's.

You have configured the SOAP sender adapter. You can trigger a call to the sender SOAP adapter using either of the following URLs. However, SAP recommends you to use the second option.

  • http:// <host name> : <port name> /XISOAPAdapter/MessageServlet?channel=<party name> : <service name> : <channel name> . If you have not created a party, enterchannel=: <service name> : <channel name>

  • http:// <host name> : <port name> /XISOAPAdapter/MessageServlet?senderParty=<name of the sender party> &senderService= <name of the sender service>&interface= <name of the interface> &receiverParty= <name of the receiver party> &receiverService= <name of the receiver service> &interfaceNamespace=<name of the interface namespace>

If you want to make use of the url in your wsdl then add "&QualityOfService=ExactlyOnce" at the end as by default it is "Best Effort"

Former Member
0 Kudos

Wow, I didn't know that!

Thank you Hareesh!

Answers (1)

Answers (1)

former_member184720
Active Contributor
0 Kudos

hmm..It should not..

May be you can cross check the configuration again.. if you feel that you are referring to correct channel then do a dummy change and activate.

make sure that the cache content is updated and then test.

Former Member
0 Kudos

Hi Hareesh.

Yes I checked again and again ..

It just does not make any sense .. strange ..

thks.

Former Member
0 Kudos

Did you try testing from rwb? Is it failing when tested from rwb also?

Which soap client you are using?

What is the Webservice for?

Regards

Osman

Former Member
0 Kudos

Hi Osman.

A third party system will send some material data to the WS, and the data should be updated in SAP Ecc system.

Unfortunately my user does not have access to test from RWB, the only test that I did in PI was the Test Configuration in Integration Builder .. and it was all ok

I'm using SoapUI 5.0.0 as the SOAP Client to do the tests..

thks