zoukankan      html  css  js  c++  java
  • WebService开发-CXF

    Web Service 开发方式 Apache CXF


    一、关于Apache CXF

    在网址http://cxf.apache.org/可以查看到关于Apache CXF的下载及文档介绍,这里不再多做介绍。

    二、CXF开发方式

    先抛个图:

    如图所示,CXF使用注解开发,使用类实现接口的开发方式开发服务器端,由于CXF与Spring整合,在Spring的配置文件中加上配置语句即可,如下:

    此时,就完成了Web Service服务器端的开发。

    CXF在web.xml文件中的配置如下:

     

     此时、启动项目就可以用你熟悉的方式访问 http:localhost:8080/项目/services/Hello?wsdl 了。

    注意:

    /services是在web.xml文件中配置的路径

    /Hello是在Spring配置文件中指定的路径

    三、代码实现

    1.接口:

    package com.cares.fms.ws.charles.service;
    
    import javax.jws.WebMethod;
    import javax.jws.WebParam;
    import javax.jws.WebResult;
    import javax.jws.WebService;
    
    /**
     * @author Charles
     * @date 2018-02-05
     * @desc TODO
     */
    @WebService
    public interface HelloWS {
    
        @WebMethod
        @WebResult(name = "hello")
        String sayHello(@WebParam(name = "name") String name);
    }

    2.类: 

    package com.cares.fms.ws.charles.service.impl;
    
    import com.cares.fms.ws.charles.service.HelloWS;
    
    import javax.jws.WebService;
    
    /**
     * @author Charles
     * @date 2018-02-05
     * @desc TODO
     */
    @WebService(endpointInterface = "com.cares.fms.ws.charles.service.HelloWS")
    public class HelloWSImpl implements HelloWS {
        @Override
        public String sayHello(String name) {
            return "Hello " + name;
        }
    }

    3.配置文件:

        <jaxws:server id="Hello" serviceClass="com.cares.fms.ws.charles.service.HelloWS" address="/Hello">
            <jaxws:serviceBean>
                <bean class="com.cares.fms.ws.charles.service.impl.HelloWSImpl"/>
            </jaxws:serviceBean>
        </jaxws:server>
    
        <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>/services/*</url-pattern>
        </servlet-mapping>
        
  • 相关阅读:
    Java线程池,你了解多少?
    Git-常用命令
    CentOS6.6 编译Redis报错:"Newer version of jemalloc required"
    IDEA 常用快捷键
    Java并发编程(4)--生产者与消费者模式介绍
    CSS样式----浮动(图文详解)
    实现键盘记录的e.Whick和keyCode,兼容FireFox和IE
    如何用Fireworks制作经典的扫光字GIF动画
    asp.net中label控件设置字体大小
    [HttpException (0x80004005): 应用程序已预编译,因此不允许使用目录“/App_Code/”。]
  • 原文地址:https://www.cnblogs.com/itachy/p/8422107.html
Copyright © 2011-2022 走看看