CXF客户端开发--动态调用webservice
2014-12-09 13:55
344 查看
之前关于webservice的文章中已经介绍了CXF JAX-WS proxy客户端模式。JAX-WS proxy模式需要在客户端使用wsdl2java生成代理接口,这种方式相对于动态调用,其效率相对较高。但是前期的工作量比较大,有时我们知道一个服务接口URL、方法名、入参schema、返回参数schema,不想和jax-ws proxy模式那么繁琐的生成客户端代码,就需要使用动态调用。
动态调用的方式很简单,代码一般很简洁。需要使用一个动态客户端工厂类:JaxWsDynamicClientFactory,并有它创建某个接口的客户端。如下:
public class DynamicClient {
private final static String SERVICE_URL = "http://localhost:8080/services/xxtInter?wsdl";
public static void main(String[] args) throws Exeception{
JaxWsDynamicClientFactory FACTORY = JaxWsDynamicClientFactory.newInstance();//1,获取一个工厂实例
Client client =
FACTORY.createClient(serviceURL);//2,生成针对指定服务接口URL的客户端
Object[] objs = client.invoke("sayHi","hello world!");//3,调用指定的方法,注意入参第一个为方法名称,第二个为方法的参数(可以传入一个参数列表,一般为数组)
System.out.print(objs[0].toString());
}
}
到此,完成CXF客户端动态调用的流程。看看代码是不是很简单,明了。
不过在调用方法的步骤,需要注意,方法参数(针对复杂类型,如pojo,list等)的schema必须和服务端的一样。
关于动态调用传递复杂类型参数,将在后面文章中进行介绍。
动态调用的方式很简单,代码一般很简洁。需要使用一个动态客户端工厂类:JaxWsDynamicClientFactory,并有它创建某个接口的客户端。如下:
public class DynamicClient {
private final static String SERVICE_URL = "http://localhost:8080/services/xxtInter?wsdl";
public static void main(String[] args) throws Exeception{
JaxWsDynamicClientFactory FACTORY = JaxWsDynamicClientFactory.newInstance();//1,获取一个工厂实例
Client client =
FACTORY.createClient(serviceURL);//2,生成针对指定服务接口URL的客户端
Object[] objs = client.invoke("sayHi","hello world!");//3,调用指定的方法,注意入参第一个为方法名称,第二个为方法的参数(可以传入一个参数列表,一般为数组)
System.out.print(objs[0].toString());
}
}
到此,完成CXF客户端动态调用的流程。看看代码是不是很简单,明了。
不过在调用方法的步骤,需要注意,方法参数(针对复杂类型,如pojo,list等)的schema必须和服务端的一样。
关于动态调用传递复杂类型参数,将在后面文章中进行介绍。
相关文章推荐
- CXF开发webService客户端调用服务器端测试
- CXF开发webservice需要的最少jar包,CXF发布和调用客户端代码
- 使用CXF实现WebService,并在客户端实现动态调用
- CXF动态客户端调用webservice实例
- CXF动态客户端调用JDK自带Webservice安全校验
- CXF动态客户端调用webservice实例
- CXF动态客户端调用webservice实例
- 开发:随笔记录之 CXF 动态调用Webservice
- CXF开发webservice需要的最少jar包,CXF发布和调用客户端代码
- CXF开发webservice需要的最少jar包,CXF发布和调用客户端代码
- 开发:随笔记录之 CXF 动态调用Webservice
- CXF动态客户端调用webservice实例
- CXF soup webservice 动态客户端调用工具类
- CXF客户端调用?wsdl webservice接口开发
- CXF动态客户端调用webservice实例
- CXF动态客户端调用webservice实例 遇到的问题
- CXF 发布WebService - 客户端调用
- WebService-03-使用CXF开发服务端和客户端
- webservice客户端调用方式(cxf)
- cxf开发并调用webservice