CXF 服务开发DEMO

注意:请使用jdk 1.6或以上版本

CXF 开发有两种方式:

Java first  先开发java程序,通过annotation生成wdsl

Wsdl first  直接写WDSL,通过wsdl2java命令生成java文件

本实例采用java first开发

服务开发

简单hello服务开发,客户端传入user信息,服务器将user信息以string类型返回给服务器。

1、定义web 服务接口(SEI

import javax.jws.WebService;

//jax-ws  annotation

@WebService

public interface Hello {

   

    public String sayHello(User user);

}

 

2、接口实现

import javax.jws.WebService;

 

//jax-ws  annotation

@WebService(endpointInterface="service.Hello")

public class HelloImpl implements Hello {

 

    public String sayHello(User user) {

       System.out.println("我被调用了");

       return user.toString();

    }

}

 

3User (服务接收参数 javabean)

import java.io.Serializable;

 

//JAXB annotation

import javax.xml.bind.annotation.XmlAccessorType;

import javax.xml.bind.annotation.XmlAccessType;  

@XmlAccessorType(XmlAccessType.FIELD)

public class User implements Serializable{

   

    public String name;

    public String age;

   

    public String getName() {

       return name;

    }

    public void setName(String name) {

       this.name = name;

    }

    public String getAge() {

       return age;

    }

    public void setAge(String age) {

       this.age = age;

    }

 

    public String toString(){

       return "name = "+name +", age = " +age;

    }

}

 

4CXF spring 整合

<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">

//cxf初始化(必需加上)

    <import resource="classpath:META-INF/cxf/cxf.xml" />

    <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />

    <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />

//定义接口实现类

    <bean id="hello" class="service.HelloImpl"></bean>

//部署服务 serviceClass 服务接口类 address 服务地址

    <jaxws:server id="hell" serviceClass="service.Hello"

       address="/hello">

       <jaxws:serviceBean>

           <ref bean="hello" />

       </jaxws:serviceBean>

    </jaxws:server>

5、注册cxf

    <!-- CXF 配置 -->

    <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>/ws/*</url-pattern>

    </servlet-mapping>

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值