This discussion is archived
0 Replies Latest reply: May 19, 2011 11:57 AM by 863188 RSS

Problem invoking RPC-style web service

863188 Newbie
Currently Being Moderated
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!

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points