您的位置:首页 > 编程语言

cxf 配置和代码小例子

2015-06-03 23:38 447 查看
1、 导入需要的jar包。

2、 编写一个服务接口

package com.demo;

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(User user);
String[] SayHiToUserList(List<User> userList);
}


3、编写服务接口的实现类

package com.demo;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

import javax.jws.WebService;

@WebService(endpointInterface="com.demo.HelloWorld",serviceName="HelloWorld")
public class HelloWorldImpl implements HelloWorld {
Map<Integer, User> users = new LinkedHashMap<Integer, User>();

public String sayHi(String text) {
return "Hello " + text;
}

public String sayHiToUser(User user) {
users.put(users.size()+1, user);
return "Hello "+ user.getName();
}

public String[] SayHiToUserList(List<User> userList) {
String[] result = new String[userList.size()];
int i=0;
for(User u:userList){
result[i] = "Hello " + u.getName();
i++;
}
return result;
}
}


4、集成到spring 中

4.1、web.xml中配置cxf的servlet。

<servlet>
<servlet-name>CXFServlet</servlet-name>
<display-name>CXFServlet</display-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>/webservice/*</url-pattern>
</servlet-mapping>


4.2、在spring bean.xml中配置服务端、客户端


<!-- xml头部需要引入以下内容 -->
xmlns:jaxws="http://cxf.apache.org/jaxws" 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"/>

<!-- 服务端 -->
<jaxws:endpoint id="helloWorld" implementor="com.demo.HelloWorldImpl" address="/helloWorld" />
<!-- 客户端 -->
<jaxws:client id="client"  serviceClass="com.flyfox.service.HelloWorld"
address="http://localhost:8080/CXFAndSpring/webservice/HelloWorld"/>


转自: http://www.cnblogs.com/frankliiu-java/articles/1641949.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cxf webservice