webservice和spring相结合

---恢复内容开始---

(一):首先先导入架包

    <!-- spring并入webservice接口所需要的jar -->
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-frontend-jaxws</artifactId>
            <version>${cxf.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-transports-http</artifactId>
            <version>${cxf.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-ws-security</artifactId>
            <version>${cxf.version}</version>
        </dependency>

自己用的是<cxf.version>2.6.2</cxf.version>

(二)修改web.xml

<!-- 集成webservice接口 -->
    <servlet>
        <display-name>CXFServlet</display-name>
           <servlet-name>CXFServlet</servlet-name>
           <servlet-class>
                  org.apache.cxf.transport.servlet.CXFServlet
           </servlet-class>
           <load-on-startup>1</load-on-startup>
     </servlet>
	<!-- 过滤掉所有已webservice开头的链接,并且是webservice的链接 -->
     <servlet-mapping>
            <servlet-name>CXFServlet</servlet-name>
            <url-pattern>/webservice/*</url-pattern>
     </servlet-mapping>

(三)在spring配置文件中配置接口并且进行发布

<!-- 部署webservice接口 -->
    <bean id="webServiceImpl" class="com.kaishengit.business.webservice.WebServiceImpl" />
    <jaxws:endpoint id="webServiceImplEndpoint" implementor="#webServiceImpl" address="/test" />

注意的是在配置头上

<beans xmlns="
       xmlns:jaxws="http://cxf.apache.org/jaxws"
       xsi:schemaLocation="http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">

(四)接下来是贴代码时刻了

 1 package com.kaishengit.business.webservice;
 2
 3 import javax.jws.WebMethod;
 4 import javax.jws.WebService;
 5
 6 //使用@WebService注解标注WebServiceI接口
 7 @WebService
 8 public interface WebServiceI {
 9
10     //使用@WebMethod注解标注WebServiceI接口中的方法
11     @WebMethod
12     String sayHello(String name);
13
14     @WebMethod
15     String save(String name,String pwd);
16 }
package com.kaishengit.business.webservice;

import javax.jws.WebService;

//使用@WebService注解标注WebServiceI接口的实现类WebServiceImpl
@WebService
public class WebServiceImpl implements WebServiceI {

    public String sayHello(String name) {
        System.out.println("WebService sayHello "+name);
        return "return:sayHello "+name;
    }

    public String save(String name, String pwd) {
        System.out.println("WebService save "+name+", "+pwd);
        return "save Success";
    }
}

当启动tomcat起来的时候我们输入:http://localhost:8080/myproject/webservice/test?wsdl   可以看到下图所示:

说明已经发布成功了!

(五)调用,还是使用自动生成代码;首先进入项目的文件;在cmd窗口中输入:执行命令:wsimport -keep url(url为wsdl文件的路径)生成客户端代码。

例如:wsimport -keep http://localhost:8080/myproject/webservice/test?wsdl

就可以自动生成代码了。

调用代码:

 1 package com.kaishengit.business.webservice;
 2
 3 public class Mytest {
 4
 5     public static void main(String[] args) {
 6         WebServiceImplService w = new WebServiceImplService();
 7         WebServiceI web = w.getWebServiceImplPort();
 8
 9         System.out.println(web.sayHello("你妹"));
10
11     }
12
13 }

可以看到:

到这边调用成功!

---恢复内容结束---

时间: 2024-11-07 19:24:03

webservice和spring相结合的相关文章

webservice和spring相结合(new)

(一):首先先导入架包 <!-- spring并入webservice接口所需要的jar --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxws</artifactId> <version>${cxf.version}</version> </dependency> <depend

WebService与Spring整合部署

服务端(CXF发布webservice): 1.  http://cxf.apache.org/download.html下载 cxf文件包(3.1.18必须使用Java 7或Java 8). 2.  将下载包的lib文件夹下的jar全部拷贝到spring项目中的lib目录下,注意删除相同的jar包(版本号不同拷贝不会替换). 3.  删除以下4个jar包: cxf-services-ws-discovery-api-3.1.5.jar cxf-services-ws-discovery-ser

So easy Webservice 8.spring整合CXF 发布WS

1.添加jar包(cxf的jar包中包含了spring的jar包),添加spring配置文件 2.web.xml中配置CXFServlet,过滤WS服务的地址 <!-- 配置CXFServlet,实现地址过滤的功能,项目启动时实例化 --> <servlet> <servlet-name>cxfServlet</servlet-name> <servlet-class>org.apache.cxf.transport.servlet.CXFSer

WebService CXF Spring

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/ja

CXF WebService整合Spring

转自http://www.cnblogs.com/hoojo/archive/2011/03/30/1999563.html 首先,CXF和spring整合需要准备如下jar包文件: 这边我是用Spring的jar包是Spring官方提供的,并没有使用CXF中的Spring的jar文件. 添加这么多文件后,首先在web.xml中添加如下配置: <!-- 加载Spring容器配置 --> <listener> <listener-class>org.springframe

webservice整合spring

接口HelloWorld需要添加webservice注解 package com.cs.webservice; import java.util.List; import javax.jws.WebParam; import javax.jws.WebService; @WebService public interface HelloWorld { String sayHi(@WebParam(name="text")String text); String sayHiToUser(

webservice整合spring cxf

下载cxf包,把他里面的包都添加进lib文件夹中. 创建一个接口.添加@WebService注解 @WebService public interface HelloWorld { String sayHi(@WebParam(name="text")String text); String sayHiToUser(User user); String[] SayHiToUserList(List<User> userList); } 创建接口的实现类,也添加@WebSer

webservice开发spring整合cxf入门案例

一.创建服务端发布服务 1. 添加依赖 <dependencies> <!-- cxf 进行rs开发 必须导入 --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxrs</artifactId> <version>3.0.1</version> </dependency> &l

Webservice整合Spring进行校验

服务端代码: 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/xm