PHP - Web Services con NuSOAP

 
Vista:

Web Services con NuSOAP

Publicado por Johan Gutierrez (1 intervención) el 23/08/2007 02:14:11
Buenas Noches.

Me gustaria saber si alguien me puede ayudar a verificar la sintaxias del siguiente servicio :

<definitions targetNamespace="urn:wsrepnov">

<types>

<xsd:schema targetNamespace="urn:wsrepnov">
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<xsd:import namespace="http://schemas.xmlsoap.org/wsdl/"/>

<xsd:complexType name="reporte">

<xsd:all>
<xsd:element name="usser" type="xsd:string"/>
<xsd:element name="passw" type="xsd:string"/>
<xsd:element name="remesa" type="xsd:string"/>
</xsd:all>
</xsd:complexType>

<xsd:complexType name="Cabecera">

<xsd:all>
<xsd:element name="Remesa" type="xsd:string"/>
<xsd:element name="Cliente" type="xsd:string"/>
<xsd:element name="Placa" type="xsd:string"/>
<xsd:element name="Conductor" type="xsd:string"/>
<xsd:element name="Vehiculo" type="xsd:string"/>
<xsd:element name="Embalaje" type="xsd:string"/>
<xsd:element name="Origen" type="xsd:string"/>
<xsd:element name="Destino" type="xsd:string"/>
<xsd:element name="PuestoControl" type="xsd:string"/>
<xsd:element name="Fecha" type="xsd:string"/>
<xsd:element name="Hora" type="xsd:string"/>
<xsd:element name="Novedad" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:schema>
</types>

<message name="getReporteRequest">
<part name="reporte" type="tns:reporte"/>
</message>

<message name="getReporteResponse">
<part name="return" type="tns:Cabecera"/>
</message>

<portType name="wsrepnovPortType">

<operation name="getReporte">
<documentation>Greet a person entering the sweepstakes</documentation>
<input message="tns:getReporteRequest"/>
<output message="tns:getReporteResponse"/>
</operation>
</portType>

<binding name="wsrepnovBinding" type="tns:wsrepnovPortType">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>

<operation name="getReporte">
<soap:operation soapAction="urn:Cabecerawsdl#Cabecera" style="rpc"/>

<input>
<soap:body use="encoded" namespace="urn:wsrepnov" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>

<output>
<soap:body use="encoded" namespace="urn:wsrepnov" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>

<service name="wsrepnov">

<port name="wsrepnovPort" binding="tns:wsrepnovBinding">
<soap:address location="http://server.intrared.net/ap/sadc_demo/ws_serv.php"/>
</port>
</service>
</definitions>

Estoy intentando integrarlo con un cliente de .NET en ASP, pero sale al realizar debug en .NET sale error de sintaxis del Schema...

Agradezco la ayuda

Gracias

JOHAN GUTIERREZ
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Web Services con NuSOAP

Publicado por Maca (1 intervención) el 05/02/2009 20:27:01
Recien estoy empezando pero aqui va mi ayuda

**************************************************************
El metodo recibe un tipo de dato complejo "reporte"
**************************************************************

<message name="getReporteRequest">
<part name="reporte" type="tns:reporte"/>
</message>

**************************************************************
El metodo te devuelve un tipo de dato complejo cabecera
**************************************************************
<message name="getReporteResponse">
<part name="return" type="tns:Cabecera"/>
</message>


Para entender que es eso debes mirar arriba de todo que tenes la definicion de tipos de datos

<xsd:complexType name="reporte">

<xsd:all>
<xsd:element name="usser" type="xsd:string"/>
<xsd:element name="passw" type="xsd:string"/>
<xsd:element name="remesa" type="xsd:string"/>
</xsd:all>
</xsd:complexType>

Ahi te dice que el tipo de dato complejo reporte esta comjpuesto por 3 datos de tipo string. Yo trabajo los web services con PHP por lo cual le mandaria al metodo un array asociativo con estos 3 datos.


$parametros = array ('usser'=>'el usuario' , 'passw'=>'el paswword' 'remesa'=>'lo que corresponda', );

El metodo me devolveria un array asociativo de tipo de dato complejo con la siguente estructura

<xsd:element name="Remesa" type="xsd:string"/>
<xsd:element name="Cliente" type="xsd:string"/>
<xsd:element name="Placa" type="xsd:string"/>
<xsd:element name="Conductor" type="xsd:string"/>
<xsd:element name="Vehiculo" type="xsd:string"/>
<xsd:element name="Embalaje" type="xsd:string"/>
<xsd:element name="Origen" type="xsd:string"/>
<xsd:element name="Destino" type="xsd:string"/>
<xsd:element name="PuestoControl" type="xsd:string"/>
<xsd:element name="Fecha" type="xsd:string"/>
<xsd:element name="Hora" type="xsd:string"/>
<xsd:element name="Novedad" type="xsd:string"/>

Sabiedo esto podria hacer echo $resultado['Remessa'] por ej

Espero que te sirva
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar