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进行访问