webservice是SOA(面向服务编程)的一种实现,
主要是用来实现异构平台通信也就
是不同平台不同项目之间的数据传输,从而避免了信息孤岛的问题,
它之所以能够
进行异构平台通信是因为它是完全基于xml的,
所以说,webService是跨平台,
跨语言,跨框架的,在java中通常有三种技术框架分别是xfire,cxf,axis2。
我们为了保证
webservice的安全性,采用了基于
WS-Security标准的安全验证(使用回调函数)。
服务端的配置
web.xml
<context-param> <param-name>contextConfigLocation</param-name> <param-value>WEB-INF/classes/applicationContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>CXFServlet</servlet-name> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>CXFServlet</servlet-name> <url-pattern>/cxf/*</url-pattern> </servlet-mapping>
applicationContext.xml配置
<!-- 这三行的配置不用去检查对应的路径下是否有对应的文件,因为cxf会自动生成的--> <import resource="classpath:META-INF/cxf/cxf.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /> <import resource="classpath:META-INF/cxf/cxf-servlet.xml" /> <bean id="userServiceBean" class="com.pengbw.service.TwebServiceImpl"/> <bean id="inMessageInterceptor" class="org.apache.cxf.interceptor.LoggingInInterceptor"/> <bean id="outLoggingInterceptor" class="org.apache.cxf.interceptor.LoggingOutInterceptor"/> <!-- 服务端配置 address客户端要用到--> <jaxws:server id="userService" serviceClass="com.pengbw.service.TwebService" address="/user"> <jaxws:serviceBean> <ref bean="userServiceBean"/> </jaxws:serviceBean> <jaxws:inInterceptors> <ref bean="inMessageInterceptor"/> </jaxws:inInterceptors> <jaxws:outInterceptors> <ref bean="outLoggingInterceptor"/> </jaxws:outInterceptors> </jaxws:server>
接口定义
@WebService public interface TwebService { public String user(String name); }
实现类
@WebService //可有可无 public class TwebServiceImpl implements TwebService { /* (non-Javadoc) * @see com.pengbw.service.TwebService#user(java.lang.String) */ @Override public String user(String name) { System.out.println("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); System.out.println(name); return name; } }
地址访问
http://127.0.0.1:8083/webService/cxf/user?wsdl
配置成功
客户端的配置
环境配置 我用的是(apache-cxf-3.0.2)
打开cmd
wsdl2java -p com.org.service -d "d:\test" "http://127.0.0.1:8083/webService/cxf/user?wsdl"
com.org.service:生成文件夹结构
d:\test:保存地址
http://127.0.0.1:8083/webService/cxf/user?wsdl:访问服务器路径
---------------------->生成文件
新建客户端
配置文件 applicationContext.xml
<!-- 这三行的配置不用去检查对应的路径下是否有对应的文件,因为cxf会自动生成的--> <import resource="classpath:META-INF/cxf/cxf.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /> <import resource="classpath:META-INF/cxf/cxf-servlet.xml" /> <!-- 客户端配置 --> <jaxws:client id="userWsClient" serviceClass="com.pengbw.servic.TwebService" address="http://127.0.0.1:8083/webService/cxf/user"/>
将生成的文件夹复制到客户端src下
测试
public class TestService { @Test public void sayHello() { ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); TwebService service = (TwebService) ctx.getBean("userWsClient"); String hello = service.user("BBBBBBBBB"); } }
结果
相关推荐
**WebService CXF 详解** **一、WebService简介** WebService是一种基于标准的,可以在不同操作系统、编程语言之间交换数据的Web应用程序。它通过WSDL(Web服务描述语言)定义了服务接口,利用SOAP(简单对象访问...
【标题】"webservice cxf_demo" 涉及到的是使用Apache CXF框架创建的Web服务示例项目。在Web服务的世界里,CXF是一个流行的开源工具,它支持SOAP和RESTful风格的服务,用于构建和消费Web服务。这个"CXF_demo"很可能...
### WebService CXF与Servlet集成详解 #### 一、项目准备与搭建 ##### 1. 创建Web Project - **项目命名**:首先,在开发环境中创建一个新的Web项目,并将其命名为`cxf_bigdata`。 ##### 2. 目录结构 - 项目的...
**WebService CXF 对象传递详解** 在Web服务领域,CXF是一个非常重要的开源框架,它允许开发者创建和消费各种Web服务。CXF支持SOAP、RESTful等多种通信模式,并且能够处理复杂的对象传递,使得Web服务的数据交换...
标题中的“cxf.jar”指的是Apache CXF的核心库文件,它是Apache CXF框架的基础,包含了处理Web服务请求和响应所需的所有核心组件。这个JAR文件通常会被添加到Java项目的类路径中,以便利用CXF的功能。 描述中提到的...
WebService CXF学习——入门篇 1.CXF由来 2.HelloWorld 3.WSDL描述 WebService CXF学习——进阶篇 1.SOAP讲解 2.JAX-WS讲解 3.对象传递 WebService CXF学习——高级篇(一)(二) 1.整合Spring框架 2.CXF...
Java WebService CXF客户端调用和服务端的实现是企业级应用程序中常见的通信方式,它基于标准的SOAP(Simple Object Access Protocol)协议,提供了一种在分布式环境中交换信息的方法。CXF是一个开源框架,它简化了...
【标题】:Webservice CXF 整合Spring的实例源码解析 在Web服务开发中,Apache CXF是一个广泛使用的开源框架,它提供了创建、部署和管理Web服务的强大功能。CXF不仅支持SOAP,还支持RESTful API,使得开发者能够...
【标题】"Webservice CXF Jar包"是一个用于构建Web服务的开源框架,它整合了Apache CXF项目的核心库。这个包中包含了多个组件和依赖,以支持开发、部署和运行基于SOAP和RESTful风格的Web服务。 【描述】提到的...
【WebService CXF 使用详解】 WebService CXF 是一个开源框架,用于构建和开发符合 WS-* 标准的 Web 服务。它提供了丰富的功能,包括支持多种协议和服务风格,以及与 Spring 框架的深度集成。CXF 允许开发者轻松地...
WebService CXF,全称Apache CXF,是一款开源的Java框架,用于构建和开发Web服务。它支持多种协议和规范,包括SOAP、RESTful、XML以及Web服务标准如WS-*。在"WebService CXF --- 传输文件MTOM"这个主题中,我们将...
WebService CXF 用了一天时间找,官网打不开,国内要积分,下下来又永不了。最后终于搞到手,上传上来分享给大家。 jdk版本 CXF版本 java 9及以上 3.3.x java 8 3.x java 7 2.2x --- 3.2之前版本 java 6 3.1 ...
WebService CXF和Mybatis是两种在Java开发中广泛使用的技术,它们分别用于构建Web服务和数据库操作。让我们深入了解这两个框架以及如何将它们与Spring框架结合使用。 **WebService CXF** CXF是一个开源的Java框架...
总结来说,"webservice cxf+spring maven项目"是一个适合初学者的示例,它展示了如何利用CXF、Spring和Maven构建、部署和测试Web服务。这个项目涵盖了Web服务的基本概念,以及CXF和Spring在Web服务中的实际应用,为...
**创建Webservice CXF客户端的步骤如下:** **服务端项目准备:** 1. **引入Webservice库:** 首先,你需要下载Apache CXF的库。例如,你可以获取apache-cxf-2.7.6.zip,并将其解压缩。将解压后的`lib`目录中的...
WebService CXF 开发教程 eclipse插件配置 开发及代码说明
【标题】"WebService CXF 开发实战"涵盖了在Java环境中使用Apache CXF框架进行Web服务开发的关键技术。Apache CXF是一个开源项目,它提供了一种简单且强大的方式来实现和消费SOAP和RESTful Web服务。CXF允许开发者...
【WebService CXF】是Apache软件基金会的一个开源项目,专门用于构建和开发Web服务。CXF全称是"CXF: The Next Generation JAXWS & JAXRPC Stack",它提供了全面的工具和技术来支持Web服务的创建、部署和消费。Apache...
本项目"WebService CXF动态Demo"旨在展示如何不关注服务端的具体实现,只需知道服务端的方法名、参数和WSDL(Web Service Definition Language)即可调用服务。这是一个非常实用的功能,因为客户端开发者无需深入...
【WebService CXF】是Apache CXF框架用于创建和消费Web服务的一种实现。Apache CXF是一个开源的Java框架,它允许开发者构建和部署SOAP(简单对象访问协议)和RESTful(表述性状态转移)Web服务。CXF提供了丰富的API...