0 Replies Latest reply: May 19, 2011 1:57 PM by 863188 RSS

    Problem invoking RPC-style web service

    863188
      Hello!

      I'm having a trouble configuring partner link to a external rpc-style web service.
      Here is a fragment of WSDL:

      <?xml version="1.0" encoding="UTF-8"?>
      <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema" name="IAsoiCitizenryservice" targetNamespace="http://tempuri.org/" xmlns:tns="http://tempuri.org/"
      xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
      xmlns:ns3="urn:AsoiSoapAuthHeader">
      <types>
      <xs:schema targetNamespace="urn:AsoiSoapAuthHeader" xmlns="urn:AsoiSoapAuthHeader">
      <xs:complexType name="TAsoiAuthHeader">
      <xs:sequence>
      <xs:element name="UserName" type="xs:string"/>
      <xs:element name="UserPwd" type="xs:string"/>
      </xs:sequence>
      </xs:complexType>
      </xs:schema>
      </types>
      <message name="RemoteGetApplicationState229Request">
      <part name="CitizenUid" type="xs:anyType"/>
      <part name="ApplicationTypeUid" type="xs:anyType"/>
      <part name="ApplicationSubTypeUid" type="xs:anyType"/>
      </message>
      <message name="RemoteGetApplicationState229Response">
      <part name="ResultApplicationState" type="xs:int"/>
      <part name="StateComment" type="xs:string"/>
      <part name="ExceptionMessage" type="xs:string"/>
      <part name="return" type="xs:int"/>
      </message>
      <message name="RemoteGetApplicationState229headerRequest">
      <part name="TAsoiAuthHeader" type="ns3:TAsoiAuthHeader"/>
      </message>
      <message name="RemoteGetApplicationState229headerResponse">
      <part name="TAsoiAuthHeader" type="ns3:TAsoiAuthHeader"/>
      </message>
      <portType name="IAsoiCitizenry">
      <operation name="RemoteGetApplicationState">
      <input message="tns:RemoteGetApplicationState229Request"/>
      <output message="tns:RemoteGetApplicationState229Response"/>
      </operation>
      </portType>
      <binding name="IAsoiCitizenrybinding" type="tns:IAsoiCitizenry">
      <operation name="RemoteGetApplicationState">
      <soap:operation soapAction="urn:AsoiCitizenryIntf-IAsoiCitizenry#RemoteGetApplicationState" style="rpc"/>
      <input >
      <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:AsoiCitizenryIntf-IAsoiCitizenry"/>
      <soap:header use="encoded" message="tns:RemoteGetApplicationState229headerRequest" part="TAsoiAuthHeader" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:AsoiSoapAuthHeader"/>
      </input>
      <output>
      <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:AsoiCitizenryIntf-IAsoiCitizenry"/>
      <soap:header use="encoded" message="tns:RemoteGetApplicationState229headerResponse" part="TAsoiAuthHeader" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:AsoiSoapAuthHeader"/>
      </output>
      </operation>
      </binding>
      <service name="IAsoiCitizenryservice">
      <port name="IAsoiCitizenryPort" binding="tns:IAsoiCitizenrybinding">
      <soap:address location="http://host:port/Asoi/AsoiSoapCitizenry.dll/soap/IAsoiCitizenry"/>
      </port>
      </service>
      </definitions>

      The problem is that when I add a partner link to this service, the input variable which is generated by netbeans doesn't contain header fields.
      So I can't get server to fill in the soap header while sending soap request.
      Although, in binding section of wsdl-editor, the operation is correctly recognized as having soap:body and soap:header.

      Please, help!