Java怎么使用XFire调用WebService接口

avatar
作者
猴君
阅读量:0

使用XFire调用WebService接口的步骤如下:

  1. 添加XFire的依赖
<dependency>     <groupId>org.codehaus.xfire</groupId>     <artifactId>xfire-core</artifactId>     <version>1.2.6</version> </dependency> 
  1. 创建一个XFire的Service对象
import org.codehaus.xfire.XFireFactory; import org.codehaus.xfire.service.Service; import org.codehaus.xfire.client.Client; import org.codehaus.xfire.transport.http.CommonsHttpMessageSender;  Service serviceModel = new ObjectServiceFactory().create(serviceClass, serviceName, namespace, endpoint); XFire xfire = XFireFactory.newInstance().getXFire(); serviceModel.setProperty(CommonsHttpMessageSender.HTTP_CLIENT, new HttpClient()); Client client = new Client(serviceModel, xfire.getTransportManager(), xfire.getBindingProvider()); 
  1. 设置WebService的地址
client.setUrl("http://localhost:8080/mywebservice"); 
  1. 调用WebService的方法
Object[] result = client.invoke(operationName, params); 

完整的示例代码如下:

import org.codehaus.xfire.XFireFactory; import org.codehaus.xfire.service.Service; import org.codehaus.xfire.client.Client; import org.codehaus.xfire.transport.http.CommonsHttpMessageSender; import org.apache.commons.httpclient.HttpClient;  public class XFireWebServiceClient {     public static void main(String[] args) throws Exception {         // 创建WebService的Service对象         Service service = new ObjectServiceFactory().create(ServiceInterface.class, "service", "http://localhost:8080/Service", null);                  // 创建XFire对象         XFire xfire = XFireFactory.newInstance().getXFire();                  // 创建WebService的Client对象         Client client = new Client(service, xfire.getTransportManager(), xfire.getBindingProvider());                  // 设置WebService的地址         client.setUrl("http://localhost:8080/mywebservice");                  // 调用WebService的方法         Object[] result = client.invoke("operationName", new Object[]{"param1", "param2"});     } } 

注意:在调用WebService接口之前,需要确保WebService的地址、命名空间、接口名和方法名等参数正确。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!