CXF调用方式——使用wsdl2java(Windwos下)
2017-01-09 11:10
309 查看
1、自动生成客户端代码:
先把CXF下到本地,本例中我下的是apache-cxf-3.1.2,然后在命令行里到相应路径执行命令:
D:\soft\DevelopSoft\apache-cxf-3.1.2\bin>wsdl2java -encoding utf-8 -d D:\\src -client http://localhost:8080/dbws?wsdl
如此wsdl2java工具会自动为你生成客户端可调用代码在D盘的src目录下。
2、在程序中使用
本例中服务端有一个接口ITestWebservice以及一个实现类TestWebserviceImpl。
自动生成的代码里会有一个ITestWebservice以及一个TestWebserviceImplService,与上边两个算是一个对应关系。
使用的时候有两种方式:
一、可以只通过ITestWebservice加地址的方式来调用
二、也可以通过ITestWebservice加TestWebserviceImplService的方式来调用
下边的代码里包含了这两种方式:
动态创建客户端的方式,请参阅本博另一篇。
http://www.cnblogs.com/flying607/p/6254045.html
先把CXF下到本地,本例中我下的是apache-cxf-3.1.2,然后在命令行里到相应路径执行命令:
D:\soft\DevelopSoft\apache-cxf-3.1.2\bin>wsdl2java -d D:\\src -client http://172.16.10.87/platform3.0/webService/TestWebservice?wsdl
D:\soft\DevelopSoft\apache-cxf-3.1.2\bin>wsdl2java -encoding utf-8 -d D:\\src -client http://localhost:8080/dbws?wsdl
如此wsdl2java工具会自动为你生成客户端可调用代码在D盘的src目录下。
2、在程序中使用
本例中服务端有一个接口ITestWebservice以及一个实现类TestWebserviceImpl。
自动生成的代码里会有一个ITestWebservice以及一个TestWebserviceImplService,与上边两个算是一个对应关系。
使用的时候有两种方式:
一、可以只通过ITestWebservice加地址的方式来调用
二、也可以通过ITestWebservice加TestWebserviceImplService的方式来调用
下边的代码里包含了这两种方式:
import org.apache.cxf.interceptor.LoggingInInterceptor; import org.apache.cxf.interceptor.LoggingOutInterceptor; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; import com.sdyy.webservice.ITestWebservice; import com.sdyy.webservice.TestWebserviceImplService; /** * @ClassName: WebServiceTest * @Description: TODO * @author: liuyx * @date: 2015年9月27日下午5:22:15 */ public class WebServiceTest3 { private static final String testUrl = "http://172.16.10.87/platform3.0/webService/TestWebservice?wsdl"; public static void main1(String[] args) throws Exception { JaxWsProxyFactoryBean factoryBean = new JaxWsProxyFactoryBean(); factoryBean.getInInterceptors().add(new LoggingInInterceptor()); factoryBean.getOutInterceptors().add(new LoggingOutInterceptor()); factoryBean.setServiceClass(ITestWebservice.class); factoryBean.setAddress(testUrl); ITestWebservice impl = (ITestWebservice) factoryBean.create(); System.out.println(impl.testOut("咯咯咯")); } public static void main(String[] args) throws Exception { TestWebserviceImplService factory = new TestWebserviceImplService(); ITestWebservice testOut = factory.getTestWebserviceImplPort(); System.out.println(testOut.testOut("GEGEGE")); } }
动态创建客户端的方式,请参阅本博另一篇。
http://www.cnblogs.com/flying607/p/6254045.html
相关文章推荐
- webservice接口常见问题1:客户端使用SOAP方式调用CXF服务时异常
- 使用异步方式调用WebService
- 使用C#创建webservice及三种调用方式
- 使用Python调用工作目录下所有快捷方式
- 使用C#(.net1.1)创建webservice及三种调用方式
- 使用C#创建webservice及三种调用方式
- 使用C#创建webservice及三种调用方式(转载)
- 使用Luacom调用AutoItX3.dll(ActiveX/COM方式)
- 使用C#创建webservice及三种调用方式
- 使用Enhydra JaWE(V2.3.1)感受(一)-改造为JApplet调用方式
- 如何使用jquery GET方式请求调用asp.net方法
- 使用C#创建webservice及三种调用方式
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(10):服务器端和客户端数据类型的自动转换:以XML方式序列化数据、小结
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(10):服务器端和客户端数据类型的自动转换:以XML方式序列化数据、小结
- 使用C#创建webservice本地调用方式
- 使用异步方式调用WebService
- 使用C#创建webservice及三种调用方式
- 使用C#创建webservice及三种调用方式
- 整理MINGW编译dll使用JNI被java调用的几种方式
- 使用C#创建webservice及三种调用方式