cxf3.x +spring 3.x(4.x)+ maven 发布webservice 服务

cxf 在做企业级webservices 服务的时候确实非常好用,个人觉得比axis1, 2都好用。
虽然spring自身也提供了webservices发布方法,这里使用cxf跟spring结合,使用起来非常方便;



整体项目结果如下:

基于maven 来配置使得项目更加简单

  1. 新建一个maven 项目,补全 src下的main和test目录
  2. 打开web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
    <display-name>cxf</display-name>
    <servlet>
    <description>m CXF Endpoint</description>
    <display-name>cxf</display-name>
    <servlet-name>cxf</servlet-name>
    <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>cxf</servlet-name>
    <url-pattern>/services/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>60</session-timeout>
    </session-config>
    </web-app>
    
  3. 新建一个cxf-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- START SNIPPET: beans -->
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation=" http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<import resource="classpath:META-INF/cxf/cxf.xml"/>
<import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
<jaxws:endpoint id="DepartmentService" implementor="com.qycloud.oatos.ty.department.DepartmentServiceImpl" address="/DepartmentService"/>
<jaxws:endpoint id="UserService" implementor="com.qycloud.oatos.ty.user.UserServiceImpl" address="/UserService"/>
</beans>

4. 补全 pom.xml ,主要是spring 的依赖和cxf,cxf 只需要以下2个

<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>3.0.0</version>
</dependency>
  1. 编写代码:这里我们回头看到cxf-servlet.xml 里面可发现我们只需要制定一个id,一个是实现类,一个访问地址即可。

a) 编写一个接口

```java
@WebService
public interface DepartmentService {

boolean updateTheOrg(String org);

boolean updateOrgsCode(String org);

}
```

b) 编写一个实现类

```java
@WebService(endpointInterface = "com.qycloud.oatos.ty.department.DepartmentService")
public class DepartmentServiceImpl implements DepartmentService {

@Override
public boolean updateTheOrg(String org) {
// TODO Auto-generated method stub
return false;
}

@Override
public boolean updateOrgsCode(String org) {
// TODO Auto-generated method stub
return false;
}

}
```

7.剩下的事情就是发布了。右键run on server。结果如下

cxf3.x +spring 3.x(4.x)+ maven 发布webservice 服务

时间: 2024-10-11 02:34:12

cxf3.x +spring 3.x(4.x)+ maven 发布webservice 服务的相关文章

Spring整合CXF之发布WebService服务

今天我们来讲下如何用Spring来整合CXF,来发布WebService服务: 给下官方文档地址:http://cxf.apache.org/docs/writing-a-service-with-spring.html 根据官方文档.我们把前面的实例用Spring整合CXF来处理下.会简化很多: 首先我们来建一个Maven项目 WebService_CXF 建好项目第一步,我们打开pom.xml 我们来添加下Spring支持: <!-- 添加Spring支持 --> <dependen

Spring+CXF+Maven发布Webservice

使用CXF发布WebService简单又快速,还可以与Spring集成,当Web容器启动时一起发布WebService服务.本例是简单的客户端给服务端发送订单信息,服务端返回订单转为json的字符串. 1.使用maven管理jar包,首先在maven添加使用到的cxf jar包依赖,到CXF官网上找到Maven的依赖内容. 网址如下:http://cxf.apache.org/docs/using-cxf-with-maven.html 我使用的是Tomcat所以引用前两项就可以了 <depen

spring与axis2整合发布webservice

最近在研究整合spring框架和axis2发布webservice服务,由于本人也才学java不久,为了便于以后的查看,在这里记录下发布过程. 所需的工具包,spring.jar和axis2链接地址为http://pan.baidu.com/s/1gdgVBoB,这里发布服务只需要两个包,spring-framework-3.2.1.RELEASE-dist.zip和axis2-1.6.2-war.zip.首先解压axis2-1.6.2-war.zip,得到axis2.war文件,放入tomca

Spring+SpringMVC+MyBatis+LogBack+C3P0+Maven+Git小结(转)

摘要 出于兴趣,想要搭建一个自己的小站点,目前正在积极的准备环境,利用Spring+SpringMVC+MyBatis+LogBack+C3P0+Maven+Git,这里总结下最近遇到的一些问题及解决办法,后续慢慢的继续补~ 目录[-] 一:建立一个Maven结构的Web工程 二:Spring.SpringMVC重复加载bean对象问题. 三:实现自个的数据缓存机制 2种缓存数据简介及其数据结构分析 2中缓存数据加载实现流程介绍 三:通过Spring自定义标签形式实现配置项类型数据的缓存数据结构

Spring Security 3.2.x与Spring 4.0.x的Maven依赖管理

原文链接: Spring Security with Maven原文日期: 2013年04月24日翻译日期: 2014年06月29日翻译人员: 铁锚 1. 概述 本文通过实例为您介绍怎样使用 Maven 管理 Spring Security 和 Spring 的依赖关系.最新的Spring Security公布版本号能够在 Maven Central仓库 中找到. 译者建议訪问MVNRespotory中org.springframework.security链接.本文是 使用Maven管理Spr

spring+springmvc+hibernate架构、maven分模块开发例子小项目案例

maven分模块开发例子小项目案例 spring+springmvc+hibernate架构 以用户管理做测试,分dao,sevices,web层,分模块开发测试!因时间关系,只测查询成功,其他的准备在ext上做个完整的案例来的,可惜最近时间很紧, 高级部分也没做测试,比如建私服,其他常用插件测试之类的,等用时间了我做个完整ext前端和maven 完整的例子出来,在分享吧! 不过目前这些撑握了,在项目中做开发是没有问题的,其他高级部分是架构师所做的. 之前我有的资源都加上了积分,有些博友向我要,

第一个使用Spring Tool Suite(STS)和Maven建立的Spring mvc 项目

一.目标 在这篇文章中.我将要向您展示怎样使用Spring Frameworks 和 Maven build创建您的第一个J2ee 应用程序. 二.信息 Maven是一个java项目的构建工具(或者自己主动构建工具).它与Ant或Gradle非常想.Maven能够自己主动下载您项目中依赖的组件. 三.要求 1.应用于Java EE 的Spring Tool Suite(STS) (http://spring.io/tools/sts/all). 请选择与您的操作系统相应的安装文件. 我比較喜欢下

Spring配置Quartz例子(基于maven构建)

Spring配置Quartz例子(基于maven构建) 在Spring中使用Quartz有两种方式实现:第一种是任务类继承QuartzJobBean,第二种则是在配置文件里定义任务类和要执行的方法,类和方法仍然是普通类.很显然,第二种方式远比第一种方式来的灵活. 之所以在这里特别对版本作一下说明,是因为spring和quartz的整合对版本是有要求的. spring3.1以下的版本必须使用quartz1.x系列,3.1以上的版本才支持quartz 2.x,不然会出错. 至于原因,则是spring

项目构建之maven篇:8.maven发布web工程及基于spring mvc,jetty实现的用户管理demo

web工程目录结构 pom/pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd&qu