Einstellung soap-Header bei der Verwendung von wsdl-Datei in php

Ich versuche, ein einfaches wsdl-Datei und machen Sie einen soap-Aufruf, aber für das Leben von mir ich kann nicht ankommen es zu wirken.

Hier ist die wsdl-Datei:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="urn:gnHPD_Staging_Table_Submit_Generic" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:s="urn:gnHPD_Staging_Table_Submit_Generic" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 <wsdl:types>
  <xsd:schema elementFormDefault="qualified" targetNamespace="urn:gnHPD_Staging_Table_Submit_Generic">
   <xsd:element name="Submit" type="s:InputMapping"/>
   <xsd:complexType name="InputMapping">
    <xsd:sequence>
     <xsd:element name="Assigned_To_Group" type="xsd:string"/>
     <xsd:element name="AutoPush" type="s:AutoPushType"/>
     <xsd:element name="Case_Type" type="s:Case_TypeType"/>
     <xsd:element name="Category" type="xsd:string"/>
     <xsd:element name="Description" type="xsd:string"/>
     <xsd:element name="Details" type="xsd:string"/>
     <xsd:element name="Entry_Number" type="xsd:string"/>
     <xsd:element name="Integration_Application" type="xsd:string"/>
     <xsd:element name="Item" type="xsd:string"/>
     <xsd:element name="Priority" type="s:PriorityType"/>
     <xsd:element name="Source" type="s:SourceType"/>
     <xsd:element name="Submitter_UNIX" type="xsd:string"/>
     <xsd:element name="Summary" type="xsd:string"/>
     <xsd:element name="Type" type="xsd:string"/>
    </xsd:sequence>
   </xsd:complexType>
   <xsd:simpleType name="AutoPushType">
    <xsd:restriction base="xsd:string">
     <xsd:enumeration value="Auto Push"/>
    </xsd:restriction>
   </xsd:simpleType>
   <xsd:simpleType name="Case_TypeType">
    <xsd:restriction base="xsd:string">
     <xsd:enumeration value="Incident"/>
     <xsd:enumeration value="Question"/>
     <xsd:enumeration value="Request"/>
     <xsd:enumeration value="Problem"/>
    </xsd:restriction>
   </xsd:simpleType>
   <xsd:simpleType name="PriorityType">
    <xsd:restriction base="xsd:string">
     <xsd:enumeration value="4"/>
     <xsd:enumeration value="3"/>
     <xsd:enumeration value="2"/>
     <xsd:enumeration value="1"/>
    </xsd:restriction>
   </xsd:simpleType>
   <xsd:simpleType name="SourceType">
    <xsd:restriction base="xsd:string">
     <xsd:enumeration value="Phone"/>
     <xsd:enumeration value="Requester"/>
     <xsd:enumeration value="Email"/>
     <xsd:enumeration value="Web"/>
     <xsd:enumeration value="NMP"/>
    </xsd:restriction>
   </xsd:simpleType>
   <xsd:element name="SubmitResponse" type="s:OutputMapping"/>
   <xsd:complexType name="OutputMapping">
    <xsd:sequence>
     <xsd:element name="StagingTable_ID" type="xsd:string"/>
     <xsd:element name="HelpDesk_ID" type="xsd:string"/>
    </xsd:sequence>
   </xsd:complexType>
   <xsd:element name="AuthenticationInfo" type="s:AuthenticationInfo"/>
   <xsd:complexType name="AuthenticationInfo">
    <xsd:sequence>
     <xsd:element name="userName" type="xsd:string"/>
     <xsd:element name="password" type="xsd:string"/>
     <xsd:element minOccurs="0" name="authentication" type="xsd:string"/>
     <xsd:element minOccurs="0" name="locale" type="xsd:string"/>
     <xsd:element minOccurs="0" name="timeZone" type="xsd:string"/>
    </xsd:sequence>
   </xsd:complexType>
  </xsd:schema>
 </wsdl:types>
   <wsdl:message name="SubmitSoapOut">
      <wsdl:part element="s:SubmitResponse" name="parameters"/>
   </wsdl:message>
   <wsdl:message name="SubmitSoapIn">
      <wsdl:part element="s:Submit" name="parameters"/>
   </wsdl:message>
   <wsdl:message name="ARAuthenticate">
      <wsdl:part element="s:AuthenticationInfo" name="parameters"/>
   </wsdl:message>
   <wsdl:portType name="gnHPD_Staging_Table_Submit_GenericPortType">
      <wsdl:operation name="Submit">
         <wsdl:input message="s:SubmitSoapIn"/>
         <wsdl:output message="s:SubmitSoapOut"/>
      </wsdl:operation>
   </wsdl:portType>
   <wsdl:binding name="gnHPD_Staging_Table_Submit_GenericSoapBinding" type="s:gnHPD_Staging_Table_Submit_GenericPortType">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
      <wsdl:operation name="Submit">
         <soap:operation soapAction="urn:gnHPD_Staging_Table_Submit_Generic/Submit" style="document"/>
         <wsdl:input>
            <soap:header message="s:ARAuthenticate" part="parameters" use="literal"></soap:header>
            <soap:body use="literal"/>
         </wsdl:input>
         <wsdl:output>
            <soap:body use="literal"/>
         </wsdl:output>
      </wsdl:operation>
   </wsdl:binding>
   <wsdl:service name="gnHPD_Staging_Table_Submit_GenericService">
  <wsdl:documentation>Generic Submit for HD</wsdl:documentation>
      <wsdl:port binding="s:gnHPD_Staging_Table_Submit_GenericSoapBinding" name="gnHPD_Staging_Table_Submit_GenericSoap">
         <soap:address location="http://servename:1234/midtier/services/ARService?server=servername&amp;webService=gnHPD_Staging_Table_Submit_Generic"/>
      </wsdl:port>
   </wsdl:service>
</wsdl:definitions>

Hier ist mein php code:

$params = array( 
  "Submitter_UNIX"=>'myunix', 
  "Source"=>'Web', 
  "Summary"=>'Test1', 
  "Description"=>'Test1', 
  "Category"=>'test services', 
  "Type"=>'test s', 
  "Item"=>'Problem', 
  "Assigned_To_Group"=>'test s', 
  "Case_Type"=>'Problem', 
  "Priority"=>'4', 
  "AutoPush" => 'Auto Push', 
  "Details"=>'Test Details', 
  "Entry_Number"=>'', 
  "Integration_Application"=>'MyDev' 
); 

$client = new SoapClient('http://servername:1234/midtier/WSDL/servername/gnHPD_Staging_Table_Submit_Generic',array('trace' => 1 )); 


$result = $client->Submit($params);  

Aber ich weiß nicht, wie die Authentisierungs-Header für die soap-Aufruf. jede Hilfe wird sehr geschätzt.

InformationsquelleAutor Sergiu Z | 2010-12-08

Schreibe einen Kommentar