Tenho esse client em php que chama um servico java, onde as informações não estao chegando no método do servico em java. Acho que pode ser algo relacionado ao parametro



$contrato1 = array('tipo_contrato' => 'Mensalista', 'carga_horaria' => '220');
$contrato2 = array('tipo_contrato' => 'Horista', 'carga_horaria' => '600');
$contratos = array($contrato1 , $contrato2);

$endereco1 = array('sem_numero' => 'False', 'numero' => '5456');
$endereco2 = array('sem_numero' => 'True' , 'numero' => '6000');
$enderecos = array($endereco1, $endereco2);

$telefone1 = array('numero' => '9999', 'tipo' => 'celular');
$telefone2 = array('numero' => '5555', 'tipo' => 'residencial');
$telefones = array($telefone1, $telefone2);

$email1 = array('email' => '9999', 'tipo' => 'pessoal');
$email2 = array('email' => '9999', 'tipo' => 'profissional');
$emails = array($email1, $email2);

$colaborador = array('origem' => 'BennerRH' , 'codigo_origem' => '15431354', 'cpf' => '01560608197' , 'nome' => 'Vaginia Hole' , 'rg' => '068974' ,
'rg_orgao_expedidor' => 'SSP/SC' ,'genero' => 'm' , 'data_nascimento' => '20/03/2000' , 'contratos'=>$contratos, 'enderecos'=> $enderecos,
'telefones'=> $telefones,'emails'=> $emails );

$client = new SoapClient("http://localhost:8080/exemplo5/OrderPlacedWS?wsdl");

$params = new SoapParam($colaborador , 'colaborador');
$res = $client->__soapCall("colaborador", array($params) );



WSDL


- <definitions name="OrderPlacedWSService" targetNamespace="http://phpwebservice_producer" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://phpwebservice_producer" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <types>
- <xs:schema targetNamespace="http://phpwebservice_producer" version="1.0" xmlns:tns="http://phpwebservice_producer" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="colaborador" type="tns:colaborador" />
<xs:element name="colaboradorResponse" type="tns:colaboradorResponse" />
<xs:element name="orderPlaced" type="tns:orderPlaced" />
<xs:element name="orderPlacedResponse" type="tns:orderPlacedResponse" />
- <xs:complexType name="colaborador">
- <xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="colaboradores" type="xs:anyType" />
</xs:sequence>
</xs:complexType>
- <xs:complexType name="colaboradorResponse">
<xs:sequence />
</xs:complexType>
- <xs:complexType name="orderPlaced">
- <xs:sequence>
<xs:element name="order_number" type="xs:int" />
<xs:element name="total" type="xs:double" />
</xs:sequence>
</xs:complexType>
- <xs:complexType name="orderPlacedResponse">
- <xs:sequence>
<xs:element minOccurs="0" name="return" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:schema>
</types>
- <message name="OrderPlacedWS_orderPlaced">
<part element="tns:orderPlaced" name="orderPlaced" />
</message>
- <message name="OrderPlacedWS_colaborador">
<part element="tns:colaborador" name="colaborador" />
</message>
- <message name="OrderPlacedWS_colaboradorResponse">
<part element="tns:colaboradorResponse" name="colaboradorResponse" />
</message>
- <message name="OrderPlacedWS_orderPlacedResponse">
<part element="tns:orderPlacedResponse" name="orderPlacedResponse" />
</message>
- <portType name="OrderPlacedWS">
- <operation name="colaborador" parameterOrder="colaborador">
<input message="tns:OrderPlacedWS_colaborador" />
<output message="tns:OrderPlacedWS_colaboradorResponse" />
</operation>
- <operation name="orderPlaced" parameterOrder="orderPlaced">
<input message="tns:OrderPlacedWS_orderPlaced" />
<output message="tns:OrderPlacedWS_orderPlacedResponse" />
</operation>
</portType>
- <binding name="OrderPlacedWSBinding" type="tns:OrderPlacedWS">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
- <operation name="colaborador">
<soap:operation soapAction="colaborador" />
- <input>
<soap:body use="literal" />
</input>
- <output>
<soap:body use="literal" />
</output>
</operation>
- <operation name="orderPlaced">
<soap:operation soapAction="http://phpwebservice_producer/orderPlaced" />
- <input>
<soap:body use="literal" />
</input>
- <output>
<soap:body use="literal" />
</output>
</operation>
</binding>
- <service name="OrderPlacedWSService">
- <port binding="tns:OrderPlacedWSBinding" name="OrderPlacedWSPort">
<soap:address location="http://localhost:8080/exemplo5/OrderPlacedWS" />
</port>
</service>
</definitions>
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.