二、CXF与springMVC整合的webService客户端调用
2015-09-09 17:26
501 查看
1、在另外一个项目中,调用已经发布好的webService时,首先在客户端项目中创建一个接口如下:
2、在main方法中调用
package com.gstd.c; import javax.jws.WebParam; import javax.jws.WebService; import javax.jws.soap.SOAPBinding; import javax.jws.soap.SOAPBinding.Style; @WebService(targetNamespace="gstd")//注意,该出的targetNamespace的值必须和webService服务项目中定义的必须一致,否则调用不成功 @SOAPBinding(style = Style.RPC) public interface IComplexUserService {//接口名称可以不一样,方法名称、参数格式必须保持一致,否则无法找到服务的实现的方法 public String getUserByName(@WebParam(name = "name") String name); }
2、在main方法中调用
package com.gstd; import org.apache.cxf.interceptor.LoggingInInterceptor; import org.apache.cxf.interceptor.LoggingOutInterceptor; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; public class Exa { /** * @param args */ public static void main(String[] args) { JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.setServiceClass(IComplexUserService2.class); factory.setAddress("http://localhost:2562/项目名称/webservice/HelloWorld");//webservice是web.xml中配置的cxf中央控制器,HelloWorld是暴漏出来的地址。 factory.getInInterceptors().add(new LoggingInInterceptor());//cxf对interceptor拦截器的的支持 factory.getOutInterceptors().add(new LoggingOutInterceptor()); IComplexUserService2 service = (IComplexUserService2) factory.create(); System.out.println(service.getUserByName("你好啊!!")); System.out.println("#############Client getUserByName##############"); } }
相关文章推荐
- Web开发:Struts2 Spring Hibernate整合(二)——Spring的使用
- java中的值传递和引用传递
- javascrpit中的slice()方法和splice()方法
- Java并发编程:CountDownLatch、CyclicBarrier和Semaphore
- SpringMVC之注解和参数传递
- java序列化
- spring security 基础入门(配置详解)
- Netbeans 8.0.2 with Maven 3.3.3不能正常编译项目
- Could not find result map java.lang.String
- 深入分析 Java 中的中文编码问题
- 简单说说Java SE、Java EE、Java ME三者之间的区别
- java generic研究分析
- Java中equals()方法的重写
- Spring+MyBatis多数据源配置实现
- spring 注入简单模拟
- [leetcode-214]Shortest Palindrome(java)
- JAVA嵌入运行Groovy脚本
- 【springmvc+mybatis项目实战】杰信商贸-9.生产厂家删除+查看
- Spring MVC教程,快速入门,深入分析
- Java性能优化(13):支持非可变性