on 09-18-2014 3:34 PM
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!
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.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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>
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.
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"
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.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
User | Count |
---|---|
95 | |
11 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.