Loading ...
Sorry, an error occurred while loading the content.

6530Failed to get operation name from the incoming request

Expand Messages
  • as.aellen
    Nov 5, 2010

      Hi all

      When my Perl client calls a WebService over soap it gets following error from the server:

       

      Error

      soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header/><soapenv:Body><soapenv:Fault xmlns:SOAP-ENV="http://schemas.xmlsoap.org/
      soap/envelope/"><faultcode>SOAP-ENV:Client</faultcode><faultstring>Failed to get operation name from the incoming request</faultstring><detail/></soapenv:Fault></soa
      penv:Body></soapenv:Envelope>

      Call

      SOAP::Transport::HTTP::Client::send_receive: HTTP::Request=HASH(0x1dd2554)
      SOAP::Transport::HTTP::Client::send_receive: POST http://138.187.96.39:8299/Processes/NetCracker/OneCRM/ReplicateProductInventory/v01 HTTP/1.1
      Accept: text/xml
      Accept: multipart/*
      Accept: application/soap
      Content-Length: 694
      Content-Type: text/xml; charset=utf-8
      SOAPAction: /Processes/NetCracker/OneCRM/ReplicateProductInventory

      <?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:namesp1="http://namespaces.soaplite.com/perl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:
      soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns
      :soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ReplicateProductInventory xmlns="http://www.swisscom.com/onecrm/potree/propagation"><CustomerAccount xs
      i:type="namesp1"><Action>Create</Action><SCN>1111</SCN><Name>TestAA</Name><Type>PO_TestAA</Type><POIID>ALL:SUB:1111AA</POIID></CustomerAccount></ReplicateProductInve
      ntory></soap:Body></soap:Envelope>
      SOAP::Transport::HTTP::Client::send_receive: HTTP::Response=HASH(0x2135bc4)
      SOAP::Transport::HTTP::Client::send_receive: HTTP/1.1 500 Internal Server Error

      Perl Code

      #WebService Definition
      #-----------------------------
      my $webService = SOAP::Lite
       -> uri('http://www.swisscom.com/onecrm/potree/propagation')
       -> proxy('http://138.187.96.39:8299/Processes/NetCracker/OneCRM/ReplicateProductInventory/v01')  #Sys2  proxy: URL   (8199 SIRIUS)
       -> on_action(sub{"/Processes/NetCracker/OneCRM/ReplicateProductInventory"}); #Set SoapAction, because it is different to URI


      #WebService Call
      #---------------- 
       

      my $result = $webService-> ReplicateProductInventory(
        SOAP::Data->name("CustomerAccount")->type("")->value(\
         SOAP::Data->name("POInstance")->type("")->value(
          SOAP::Data->name("Action")->type("")->value('Create'),
          SOAP::Data->name("SCN")->type("")->value('1111'),
          SOAP::Data->name("Name")->type("")->value('TestAA'),
          SOAP::Data->name("Type")->type("")->value('PO_TestAA'),
          SOAP::Data->name("POIID")->type("")->value('ALL:SUB:1111AA')
          #SOAP::Data->name("ParentPOIID")->type("")->value('2010-10-14T08:30:00'),
          #SOAP::Data->name("CFSIID")->type("")->value('2010-10-14T08:30:00'))
          )
         )
        );

      I tried also explicitly to set the soapAction, but it didn't help at all.

       

      WSDL

      <?

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

      <

      wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://www.swisscom.com/onecrm/potree/propagation" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns0="http://www.swisscom.com/onecrm/potree/propagation" name="GetObjectState" targetNamespace="http://www.swisscom.com/onecrm/potree/propagation">

      <wsdl:types>

      <

      xs:schema xmlns="http://www.swisscom.com/onecrm/potree/propagation" elementFormDefault="qualified" targetNamespace="http://www.swisscom.com/onecrm/potree/propagation" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">

      <xs:element name="CustomerAccount">

      <xs:complexType>

      <xs:sequence>

      <xs:element maxOccurs="unbounded" name="POInstance">

      <xs:complexType>

      <xs:sequence>

      <xs:element name="Name" type="NonEmptyStringType" />

      <xs:element minOccurs="0" name="Type" type="NonEmptyStringType" />

      <xs:element name="POIID" type="NonEmptyStringType" />

      <xs:element minOccurs="0" maxOccurs="unbounded" name="ParentPOIID" type="NonEmptyStringType" />

      <xs:element minOccurs="0" maxOccurs="unbounded" name="CFSIID" type="NonEmptyStringType" />

      </xs:sequence>

      <xs:attribute name="Action" type="ActionType" use="required" />

      </xs:complexType>

      </xs:element>

      </xs:sequence>

      <xs:attribute name="SCN" type="NonEmptyStringType" use="required" />

      </xs:complexType>

      <xs:key name="POInstanceKey">

      <xs:selector xpath="POInstance" />

      <xs:field xpath="POIID" />

      </xs:key>

      </xs:element>

      <xs:simpleType name="ActionType">

      <xs:restriction base="xs:string">

      <xs:enumeration value="Create" />

      <xs:enumeration value="Update" />

      <xs:enumeration value="Delete" />

      </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="ResponseType">

      <xs:restriction base="xs:string">

      <xs:enumeration value="Success" />

      <xs:enumeration value="Failure" />

      </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="NonEmptyStringType">

      <xs:restriction base="xs:string">

      <xs:minLength value="1" />

      </xs:restriction>

      </xs:simpleType>

      <xs:element name="ExceptionDetails">

      <xs:complexType>

      <xs:sequence>

      <xs:element name="Type" type="xs:string" />

      <xs:element name="Message" type="xs:string" />

      <xs:element minOccurs="0" name="Details" type="xs:string" />

      </xs:sequence>

      </xs:complexType>

      </xs:element>

      <xs:element name="CustomerAccountResponse">


      (Message over 64 KB, truncated)
    • Show all 2 messages in this topic