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

Spring与CXF结合发布WebService

2013-06-27 23:07 411 查看
1.web.xml中添加cxf的servlet

<servlet>
<servlet-name>cxf</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>cxf</servlet-name>
<url-pattern>/webservice/*</url-pattern>
</servlet-mapping>

2.编写WebService接口与实现类

@WebService
public interface MaiyoCoreWs {

public List<User> findListByEmail(String email);

}
@Service
@Transactional
@WebService(endpointInterface = "org.maiyoframework.assist.webservice.MaiyoCoreWs")
public class MaiyoCoreWsImpl implements MaiyoCoreWs {

public List<User> findListByEmail(String email) {
Finder finder = new Finder();
finder.setWhere(new Condition("email like", "%" + email + "%"));
finder.setOrderBy("registerTime", "desc");
return dao.findList(finder);
}

@Resource
private UserDao dao;

}

3.增加一个Spring配置文件,用于专门存放WebService的配置信息

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"> 
<!-- 发布WebService,implementor为具体实现类,address为WebService的相对地址 -->
<jaxws:endpoint implementor="#maiyoCoreWsImpl" address="/user_list">
<!-- 添加权限拦截器 -->
<jaxws:inInterceptors>
<bean class="org.maiyoframework.assist.webservice.interceptor.AuthInterceptor" />
</jaxws:inInterceptors>
</jaxws:endpoint>
</beans>


xmlns:jaxws="http://cxf.apache.org/jaxws" http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd


以上三行代码是必须的

然后部署项目并启动,通过*/webservice/user_list?wsdl进行访问
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: