Hi,
I'm trying to create an application which has a SOAP webservice so
other applications can communicatie with the application. Herefor I'm
using the fairly new SOAP extension. Everything works fine until I try
to put a value into the SOAP HEADERS.
I want to add a key to the headers so my application can check whether
the third party application is authorized to execute the call. The
insertion of the value works fine. The problem resides in the
execution of the function on the server side. Using the webservice
when not in WSDL mode everything workst fine, so I quess it has
something to do with my WSDL. Can anyone help me please?
This is how the header part of my request message looks like:
---------------------------------------------------------------
<SOAP-ENV:Header><ns1:authorize>someKey</ns1:authorize></SOAP-ENV:Header>
---------------------------------------------------------------
My WSDL looks like this (shortened for displaying purposes):
---------------------------------------------------------------
<wsdl:definitions ...>
<message name="authorizeIn">
<part name="key" type="xsd:string"/>
</message>
<message name="authorizeOut">
<part name="Result" type="xsd:string"/>
</message>
<portType ...>
<wsdl

peration name="authorize">
<wsdl:input message="typens:authorizeIn"/>
<wsdl

utput message="typens:authorizeOut"/>
</wsdl

peration>
</portType>
<binding ...>
<soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl

peration name="authorize">
<soap

peration soapAction="urn:#authorize"/>
<input>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:KennisAtlas"/>
</input>
<output>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:KennisAtlas"/>
</output>
</wsdl

peration>
</binding>
<service name="KennisAtlas">
<port name="KennisAtlasSoap" binding="typens:KennisAtlasSoap">
<soap:address location="http://kennisatlas.axipress.nl/KennisAtlas/Service/"/>
</port>
</service>
</wsdl:definitions>
---------------------------------------------------------------
This is my function definition:
---------------------------------------------------------------
class Service
{
function authorize($key)
{
//...
}
}
---------------------------------------------------------------