1.CXF集成web项目,是通过org.apache.cxf.transport.servlet.CXFNonSpringServlet进行集成
?
2.servlet
?
public class WSServlet extends CXFNonSpringServlet { /** * */ private static final long serialVersionUID = 1L; @SuppressWarnings("static-access") @Override public void loadBus(ServletConfig servletConfig) throws ServletException { super.loadBus(servletConfig); Endpoint.publish("/helloWorld", new HelloImpl()) .publish("/cal", new CalculatorImpl()) .publish("/userService", new UserServiceImpl()); } }
?
通过Endpoint.publish发布,我们webService所有服务都在此发布
?
?
3.配置我们servlet
?
<servlet> <servlet-name>WebServiceServlet</servlet-name> <servlet-class>com.cxf.servlet.WSServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>WebServiceServlet</servlet-name> <url-pattern>/ws/*</url-pattern> </servlet-mapping>
?
? <url-pattern>/ws/*</url-pattern>不要配置成<url-pattern>/*</url-pattern>,否则你访问那个页面都会跳到
? websevice 服务列表的页面,你想也页面也就无法到达了
?
? 访问我们wsdl地址,例如我们本机http://localhost:8080/02_cxf/ws/userService?wsdl
?
?这样就可以了,配置完,你可以试着访问你的wsdl。很简单吧!
?