Java调用CXF WebService接口的两种方式实例
Java调用CXF WebService接口的两种方式实例 Java调用CXF WebService接口是Java开发者在开发过程中经常遇到的问题。今天,我们将讨论Java调用CXF WebService接口的两种方式实例,即静态调用和动态调用。 静态调用 静态调用是通过创建WebService客户端代理工厂来调用WebService接口的。我们需要创建一个JaxWsProxyFactoryBean实例,并设置服务类、地址和拦截器。然后,我们可以通过工厂创建一个接口对象,并调用接口方法。下面是一个简单的示例代码: ```java JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.setServiceClass(DeductionService.class); factory.setAddress("http://localhost:7002/card/services/HelloWorld?wsdl"); CxfService service = (CxfService) factory.create(); String result = service.sayHello("aaaaaaaaaa"); System.out.println("调用结果:" + result); ``` 静态调用需要依赖服务类,因为客户端调用CXF WebService接口的过程中需要服务器端提供服务。这可能会带来一些不便捷的地方,例如,如果同一个项目中没有提供服务类,那么静态调用将无法工作。 动态调用 动态调用是通过JaxWsDynamicClientFactory来调用WebService接口的。动态调用不需要依赖服务类,只需要提供接口名和路径即可。下面是一个简单的示例代码: ```java JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance(); org.apache.cxf.endpoint.Client client = dcf.createClient("http://localhost:7002/card/services/HelloWorld?wsdl"); QName name = new QName("http://dao.xcf.digitalchina.com/", "sayHello"); String xmlStr = "aaaaaaaa"; Object[] objects; try { objects = client.invoke(name, xmlStr); System.out.println(objects[0].toString()); } catch (Exception e) { e.printStackTrace(); } ``` 动态调用完全不依赖服务类,服务器端只要提供接口名和路径就可以方便的调用。这使得动态调用更为灵活和方便。 总结 在本文中,我们讨论了Java调用CXF WebService接口的两种方式实例,即静态调用和动态调用。静态调用需要依赖服务类,而动态调用不需要依赖服务类。这两种方式都可以用于调用WebService接口,但是它们之间有着明显的区别。我们希望本文的内容能够对大家的学习或者工作具有一定的参考价值。














- 粉丝: 3
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- DOPOOL手机电视使用手册(For_Android).doc
- 2023年数控铣削编程与操作设计有全套图纸.doc
- XX公司网络安全总体规划方案.doc
- 2023年面向对象程序设计题库C.doc
- 2022软件公司实习总结.docx
- MATLAB在电力电子技术仿真中的运用.doc
- VS2010-VB环境读取TXT文件任意行(可编辑修改word版).docx
- 2022软件实习总结.docx
- 2023年英语I课程基于网络考核改革试点方案.doc
- PHP语言规范文档.doc
- 2023年flash动画制作春电大考试复习资料.doc
- 2023年招标师考试考前指导考试练习题项目管理与招标采购篇.doc
- 大楼综合布线及机房建设方案V.doc
- halcon与C混合编程(三)数字识别.docx
- GIS组合电器日常巡视项目PPT课件.ppt
- HC无线网络勘测典型场景酒店办公大楼vPPT课件.ppt


