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

Method names not being passed

Expand Messages
  • renato_luiz_araujo
    Hello Guys, I m new to soaplite and I m havin some interoperabities issues. I did a SOAP::Lite server that is working pretty weel with soaplite clients and
    Message 1 of 1 , Aug 11 9:08 AM
    • 0 Attachment
      Hello Guys,

      I'm new to soaplite and I'm havin some interoperabities issues.

      I did a SOAP::Lite server that is working pretty weel with soaplite
      clients and with asp clients using the soaplite COM dll.
      My problem is to use the SOAP::Lite Server with a delphi or ms soap
      toolkit with a wsdl file.
      I create the wsdl file with WSDL::Generator and with Cape Clear WSDL
      Editor.
      The problem is that when I make a request using the wsdl file, the xml
      request generated doesn't include the method name, but just the
      parameters and this don't work.
      Whith the soaplite COM dll the method name is passed and all works
      pretty well.
      What could be the problem? Is it my wsdl file, or my SOAP::Lite
      server.


      This is my SOAP::Lite server

      #!/usr/bin/perl -w

      use SOAP::Transport::HTTP;

      SOAP::Transport::HTTP::CGI
      -> on_action(sub {return})
      -> dispatch_to('/opt/mf', 'debitos', 'segundavia')
      -> handle;


      And this is my wsdl file:

      <?xml version="1.0" encoding="UTF-8"?>
      <definitions
      name="debitos"
      targetNamespace="http://10.1.20.217/wsdl/debitos.wsdl"
      xmlns="http://schemas.xmlsoap.org/wsdl/"
      xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
      xmlns:tns="http://10.1.20.217/wsdl/debitos.wsdl"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:xsd1="http://10.1.20.217/wsdl/debitos.xsd1">
      <types>
      <xsd:schema
      targetNamespace="http://10.1.20.217/wsdl/debitos.xsd1"
      xmlns="http://schemas.xmlsoap.org/wsdl/"
      xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
      xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
      xmlns:tns="http://10.1.20.217/wsdl/debitos.wsdl"
      xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:xsd1="http://10.1.20.217/wsdl/debitos.xsd1">
      <xsd:complexType name="LinhaDebitos">
      <xsd:complexContent>
      <xsd:restriction base="SOAP-ENC:Array">
      <xsd:sequence>
      <xsd:element maxOccurs="5" minOccurs="5"
      name="item" type="xsd:string"/>
      </xsd:sequence>
      <xsd:attribute ref="SOAP-ENC:arrayType"
      wsdl:arrayType="xsd:string[]"/>
      </xsd:restriction>
      </xsd:complexContent>
      </xsd:complexType>
      <xsd:complexType name="ArrayDebitos">
      <xsd:complexContent>
      <xsd:restriction base="SOAP-ENC:Array">
      <xsd:sequence>
      <xsd:element maxOccurs="24" minOccurs="0"
      name="item" type="xsd1:LinhaDebitos"/>
      </xsd:sequence>
      <xsd:attribute ref="SOAP-ENC:arrayType"
      wsdl:arrayType="xsd1:LinhaDebitos[]"/>
      </xsd:restriction>
      </xsd:complexContent>
      </xsd:complexType>
      <xsd:complexType name="ListaDebitos">
      <xsd:sequence>
      <xsd:element maxOccurs="1" minOccurs="1"
      name="Nome" type="xsd:string"/>
      <xsd:element maxOccurs="1" minOccurs="1"
      name="cdc" type="xsd:string"/>
      <xsd:element
      maxOccurs="1"
      minOccurs="1"
      name="debitos"
      type="xsd1:ArrayDebitos"/>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:schema>
      </types>
      <message name="NewMessageResponse">
      <part name="debitos" type="xsd1:ListaDebitos"/>
      </message>
      <message name="NewMessageRequest">
      <part name="cdc" type="xsd:string"/>
      </message>
      <portType name="debitosPortType">
      <operation name="lista_debitos">
      <input message="tns:NewMessageRequest"/>
      <output message="tns:NewMessageResponse"/>
      </operation>
      <operation name="hi">
      <input message="tns:hiRequest"/>
      <output message="tns:hiResponse"/>
      </operation>
      </portType>
      <binding name="debitosBinding" type="tns:debitosPortType">
      <soap:binding style="document"
      transport="http://schemas.xmlsoap.org/soap/http"/>
      <operation name="lista_debitos">
      <soap:operation soapAction="debitos#listadebitos"/>
      <input>
      <soap:body parts="cdc" use="literal"/>
      </input>
      <output>
      <soap:body parts="debitos" use="literal"/>
      </output>
      </operation>
      </binding>
      <service name="debitos">
      <documentation>Lista de Debitos</documentation>
      <port binding="tns:debitosBinding" name="debitosPort">
      <soap:address
      location="http://10.1.20.217/perl/mainframe.cgi"/>
      </port>
      </service>
      </definitions>
    Your message has been successfully submitted and would be delivered to recipients shortly.