2010-02-19 115 views
3

我试图调用从PHP代码使用Axis创建的Java Web服务。web服务托管在我的LAN上。我能够使用SoapUI成功地调用Web服务。我已安装PHP肥皂扩展。 但是,我不知道我的PHP代码是否正确。以下是我的PHP代码。调用使用Axis从PHP代码创建的Java Web服务

<?php 
$client = new SoapClient('http://machinename/axis/services/Compiere?wsdl'); 
$params = array('in0'=> '124','in1'=>'1'); 
$result = $client->__SoapCall('createOrder',array($params)); 
print $result->createOrderReturn; 
?> 

的WSDL如下:

<?xml version="1.0" encoding="UTF-8"?> 
<wsdl:definitions targetNamespace="http://compservice.com" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://compservice.com" xmlns:intf="http://compservice.com" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<!--WSDL created by Apache Axis version: 1.4 
Built on Apr 22, 2006 (06:55:48 PDT)--> 

    <wsdl:message name="createOrderRequest"> 

     <wsdl:part name="in0" type="xsd:int"/> 

     <wsdl:part name="in1" type="xsd:int"/> 

    </wsdl:message> 

    <wsdl:message name="createOrderResponse"> 

     <wsdl:part name="createOrderReturn" type="xsd:string"/> 

    </wsdl:message> 

    <wsdl:portType name="OrderServiceInt"> 

     <wsdl:operation name="createOrder" parameterOrder="in0 in1"> 

     <wsdl:input message="impl:createOrderRequest" name="createOrderRequest"/> 

     <wsdl:output message="impl:createOrderResponse" name="createOrderResponse"/> 

     </wsdl:operation> 

    </wsdl:portType> 

    <wsdl:binding name="CompiereSoapBinding" type="impl:OrderServiceInt"> 

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

     <wsdl:operation name="createOrder"> 

     <wsdlsoap:operation soapAction=""/> 

     <wsdl:input name="createOrderRequest"> 

      <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://compservice.com" use="encoded"/> 

     </wsdl:input> 

     <wsdl:output name="createOrderResponse"> 

      <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://compservice.com" use="encoded"/> 

     </wsdl:output> 

     </wsdl:operation> 

    </wsdl:binding> 

    <wsdl:service name="OrderServiceIntService"> 

     <wsdl:port binding="impl:CompiereSoapBinding" name="Compiere"> 

     <wsdlsoap:address location="http://nuca232/axis/services/Compiere"/> 

     </wsdl:port> 

    </wsdl:service> 

</wsdl:definitions> 

是我的PHP代码是否正确?

请帮忙。 谢谢。

回答