加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

webService学习之路(二):springMVC集成CXF快速发布webService

发布时间:2020-12-16 21:51:59 所属栏目:安全 来源:网络整理
导读:继上一篇webService入门之后,http://www.cnblogs.com/xiaochangwei/p/4969448.html?,现在我将我周六在家研究的结果公布出来 ? 本次集成是基于之前已经搭建好的SpringMVC+mybatis+shiro的基础上进行的,看似很简单的集成,但是由于jar包冲突,搞了好久,牺

继上一篇webService入门之后,http://www.cnblogs.com/xiaochangwei/p/4969448.html?,现在我将我周六在家研究的结果公布出来

?

本次集成是基于之前已经搭建好的SpringMVC+mybatis+shiro的基础上进行的,看似很简单的集成,但是由于jar包冲突,搞了好久,牺牲周六休息时间奉上结果

代码文章末尾会给出下载地址的,请大家不用担心,这些都是我搭建的,还不是很完善,要用于商业项目请修改完善。

?

步骤:

① 首先在?http://cxf.apache.org/download.html?下载最新版本的CXF,我下载的是3.1.6

② 由于不maven项目,所以拷贝下载的cxf lib目录下的所有包到项目的lib路径下。(我在这里尝试一个个添加,后来jar包冲突了,改天优化下,找出最精简的jar包)

③ 写接口文件和接口的实现文件

? ? 接口文件如下,需要注意的是,接口文件上要添加@WebService注解,否则待会儿接口发布后,有这个服务,却没有可供调用的接口方法(自己各种条件下的尝试,不对请拍砖)

复制代码

package com.xiaochangwei.web.service;

import javax.jws.WebParam;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.Style;

@WebService
@SOAPBinding(style = Style.RPC)
public interface WebserviceTest {
    
    public String getUserByName(@WebParam(name = "username") String username);

    void setUser(String username);
    
    boolean getuser(String name,String password);
    
    boolean test3();
}

复制代码

?接口实现类如下,经测试,接口实现类不需要添加@WebService注解,当然添加了也没报错

<!-- cxf服务启动servlet --> <servlet> servlet-name>CXFServlet</servlet-class>org.apache.cxf.transport.servlet.CXFServletload-on-startup>1> servlet-mappingurl-pattern>/webService/*>

复制代码

⑤ 在Spring配置文件,默认为applicationContext.xml中增加下列代码,需要注意的是:请加入xsd信息 注意加大加粗的字