cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP receiver - wsdl errors

Former Member
0 Kudos

Hi

We have a synchronous Proxy to SOAP scenario. I'm using the wsdl sent by our vendor. It seems to be working when I use SOPAUI. But when I send a message from PI, it fails in the vendor's system.

When I import the wsdl into SOAPUI, the wsdl looking like this-

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://DefaultNamespace">

   <soapenv:Header/>

   <soapenv:Body>

     <def:updateStyleNumber soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

         <in0 xsi:type="soapenc:string" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">

         &#38;lt;Product name=&#38;quot;FOSMBAG203&#38;quot; revision=&#38;quot;Fall 2013&#38;quot; type=&#38;quot;Bag&#38;quot; StyleNumber=&#38;quot;ABC12345&#38;quot;/&#38;gt;

         </in0>

      </def:updateStyleNumber>

   </soapenv:Body>

</soapenv:Envelope>

But when you look at the soap message from PI, it has the operation missing.

<SOAP:Envelope

        xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'>

        <SOAP:Header/>

        <SOAP:Body>

            <ns0:in0

                xmlns:ns0='http://DefaultNamespace'>

                &#38;lt;Product name=&#38;quot;FOSMBAG203&#38;quot; revision=&#38;quot;Fall 2013&#38;quot; type=&#38;quot;Bag&#38;quot; StyleNumber=&#38;quot;ABC12345&#38;quot;/&#38;gt;

                </ns0:in0>

            </SOAP:Body>

        </SOAP:Envelope>

I have highlighted the missing line in blue. I'm not sure how to resolve this. Any suggestions would be greatly appreciated.

Thanks

Accepted Solutions (0)

Answers (6)

Answers (6)

Former Member
0 Kudos

Hi All

Thanks for your suggestions. I changed the messages to RPC & it works.

Former Member
0 Kudos

The wsdl I have is RPC encoded. Could that be the issue? Is there something extra I need to do with this format?

Removing SOAP envelope or using SOAP action does not help.

thanks

Rachana

ambrish_mishra
Active Contributor
0 Kudos

HI Rachana,

Few hints:

Are you using the option Do not use SOAP envelope in adapter.

Are you using the SOAP action option in the adapter.

You need to check the output generated out of mapping and then the adapter and see where the gaps are. Try and plug the gaps one by one. First sort out the envelope and then SOAP action...

Hope it helps!

Ambrish

baskar_gopalakrishnan2
Active Contributor
0 Kudos

couple of suggestions:

Your reply does not give whole lot information to diagnose.

Please show your  inbound service interface.  

1) First import the wsdl as external defintiion in your namespace.

2) Then use it as external message type in the inbound service interface.

3) Then do message mapping.

4) Plus check in the operation mapping you see message structure and can do some small test over there.

5) Also make sure you entered soap receiver channel valid target url and if you have action then action values. If not just leave blank in action field. Hope this helps

Also search scn for the soap receiver scenarios. That would help for sure. Simply testing using soapui would help only connectivity and ping test for the web service.

Former Member
0 Kudos

HI Inaki, Bhaskar

I have already done all of the step you'll have suggested.

Thansk
Rachana

iaki_vila
Active Contributor
0 Kudos

hi Rachana,

have you imported the wsdl as external definition for the receiver side?. Try to check the mapping in the message mapping or the operation mapping.

former_member190624
Active Contributor
0 Kudos

Hi Rachana,

What is the error message in vendor's system?

Regards

Hari.

Former Member
0 Kudos

HI Hari

It basically says "no such operation as in0".

It should really be "updateStyleNumber"

Here's the actual error message

<soapenv:Envelope

        xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"

        xmlns:xsd="http://www.w3.org/2001/XMLSchema"

        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

        <soapenv:Body>

            <soapenv:Fault>

                <faultcode

                    xmlns:ns1="http://xml.apache.org/axis/">

                    ns1:Client

                    </faultcode>

                <faultstring>

                    No such operation 'in0'

                    </faultstring>

                <detail>

                    <ns2:hostname

                        xmlns:ns2="http://xml.apache.org/axis/">

                        uusrcdpla00

                        </ns2:hostname>

                    </detail>

                </soapenv:Fault>

            </soapenv:Body>

        </soapenv:Envelope>