1、在idea中使用maven新建web工程并引入spring mvc,具体可以参考https://www.cnblogs.com/laoxia/p/9311442.html;

2、在工程POM文件中引入apache cxf的相关jar包:

 <dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>apache-cxf</artifactId>
<version>3.2.4</version>
<type>pom</type>
</dependency>

3、定义webservice服务的接口:

 @WebService
public interface HelloWorld {
@WebMethod
String say(@WebParam(name = "inputText") String text);
}

4、实现webservice服务:

 @WebService
public class HelloWorldImpl implements HelloWorld { @Override
public String say(@WebParam(name = "inputText") String text) {
return "hello, My Test worlld: " + text;
}
}

5、定义发布webservice服务的xml文件cxfWebService.xml:

 <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util.xsd
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="HelloWorldBean" address="/helloworld" implementor="com.ucar.test.cxf.impl.HelloWorldImpl"/>
</beans>

6、在web.xml文件中指定加载webservice服务配置文件和CXFServlet:

 <context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/cxfWebService.xml</param-value>
</context-param>
..................
<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/webservice/*</url-pattern>
</servlet-mapping>

7、将工程打包成war包并放到tomcat下运行,在浏览器中打开http://localhost:8080/test11/webservice/helloworld?wsdl  即可看到下面的界面:

此时可以编写客户端程序调用webservice服务,也可以使用wsCaller.jar来模拟调用webService服务,调用命令:java -jar wsCaller.jar;

使用apache cxf实现webservice服务的更多相关文章

  1. CXF发布webService服务以及客户端调用

    这篇随笔内容是CXF发布webService服务以及客户端调用的方法 CXF是什么? 开发工作之前需要下载CXF和安装 下载地址:http://cxf.apache.org 安装过程: <1&g ...

  2. 【转】构建基于CXF的WebService服务

    构建基于CXF的WebService服务 Apache CXF = Celtix+ XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF.C ...

  3. Apache CXF实现WebService入门教程(附完整源码)

    Apache CXF实现WebService非常简单实用,只需要几步就可以实现一个简单的web service. 首先我们需要新建一个maven项目,在pom中添加依赖和jetty作为测试的web s ...

  4. spring boot 集成 Apache CXF 调用 .NET 服务端 WebService

    1. pom.xml加入 cxf 的依赖 <dependency> <groupId>org.apache.cxf</groupId> <artifactId ...

  5. Apache CXF实现WebService发布和调用

    第一种方法:不用导入cxf jars 服务端: 1. 新建Web工程 2.新建接口和实现类.测试类 目录结构图如下: 接口代码: package com.cxf.spring.service; imp ...

  6. 使用Apache CXF开发WebServices服务端、客户端

    在前一篇的博客中,我使用Xfire1.x来开发了WebServies的服务端. 但是如果你访问Apache的官网,可以看到xfire已经被合并了. 最新的框架叫做CXF. Apache CXF = C ...

  7. 使用CXF发布WebService服务简单实例

    一.说明: 前面介绍了使用axis2来发布Webservice服务,现在介绍一种更popular,更高效的Webservice服务发布技术:CXF Apache CXF = Celtix + XFir ...

  8. Eclipse+Maven+Spring+CXF 构建webservice 服务

    一. 软件准备 Eclipse 4.2.1 Maven 2.2.1 Spring 3.2.6 CXF 3.0.2 二. 步骤 首先,在Eclipse中用maven构建一个quickstart版本的ma ...

  9. jfinal集成spring cxf做webservice服务

    链接地址:http://zhengshuo.iteye.com/blog/2154047 废话不说,直接上代码 新增cxf的plugin CXFPlugin package com.jfinal.pl ...

随机推荐

  1. 接触到的加密算法MD5、SHA1(转)

    参考链接: https://blog.csdn.net/u012611878/article/details/54000607 https://blog.csdn.net/worm0527/artic ...

  2. webpack进阶构建项目(一):1.理解webpack加载器

    1.理解webpack加载器 webpack的设计理念,所有资源都是“模块”,webpack内部实现了一套资源加载机制,这与Requirejs.Sea.js.Browserify等实现有所不同. We ...

  3. L273 NCAA

    On Friday, the system that prevents college athletes from being compensated for their labor (beyond ...

  4. CHERRY G80 3000L 使用一月有感

    就是楼上这家伙.. 都说程序猿用的最多的除了自己的右手就是键盘了.- - SO一个好的键盘必定会令写码的速度提升. 在TB和JD上选择许久,在青轴,红轴,黑轴,茶轴间难以抉择. 最后终于敲定: CHE ...

  5. SSH防止超时的设置

    针对SSH命令工具超时的解决方法: 1.在命令行输入这两行代码,即可完成 echo export TMOUT=1000000 >> /root/.bash_profile cat /roo ...

  6. Eclipse远程调试Tomcat

    1.Linux服务器中在Tomcat的catalina.sh文件添加如下内容: CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,ad ...

  7. 标准正态分布表(scipy.stats)

    0. 标准正态分布表与常用值 Z-score 是非标准正态分布标准化后的 x即 z=x−μσ" role="presentation">z=x−μσz=x−μσ 表 ...

  8. 【转载】 BN(batch normalization)

    原文地址: https://blog.csdn.net/qq_35608277/article/details/79212700 ----------------------------------- ...

  9. 深度强化学习介绍 【PPT】 Human-level control through deep reinforcement learning (DQN)

    这个是平时在实验室讲reinforcement learning 的时候用到PPT, 交期末作业.汇报都是一直用的这个,觉得比较不错,保存一下,也为分享,最早该PPT源于师弟汇报所做.

  10. 一种绕过PTRACE反调试的办法

    Linux 系统gdb等调试器,都是通过ptrace系统调用实现.Android加固中,ptrace自身防止调试器附加是一种常用的反调试手段. 调试时一般需要手工在ptrace处下断点,通过修改ptr ...