CXF学习笔记(3)-HelloWorld!-通过servlet发布webservice .
来源:互联网 发布:电子产品销售软件 编辑:程序博客网 时间:2024/06/07 03:39
前面有篇文章介绍了发布CXF webservice的方法,在这篇文章中并没有启动web服务,笔者也提出了自己的一些疑问与思考,接下来的文章是上一篇文章疑问的解答,这里将通过servlet的方式来发布webservice
1.编写服务发布servlet-WebServiceServlet
--因为CXF提供的Demo以及网上大多例子都是和spring框架集成的,这里我们没有用spring,而是一个纯粹的cxf环境,让我们的servlet继承自CXFNoSpringSevlet--这个名字太直接了,呵呵
- package com.crazycoder2010.webservice.cxf.server.servlet;
- import javax.servlet.ServletConfig;
- import javax.xml.ws.Endpoint;
- import org.apache.cxf.transport.servlet.CXFNonSpringServlet;
- import com.crazycoder2010.webservice.cxf.server.HelloWorldServiceImpl;
- public class WebServiceServlet extends CXFNonSpringServlet {
- private static final long serialVersionUID = -5314312869027558456L;
- @Override
- protected void loadBus(ServletConfig servletConfig) {
- super.loadBus(servletConfig);
- System.out.println("#####################");
- Endpoint.publish("/helloWorldService", new HelloWorldServiceImpl());
- }
- }
package com.crazycoder2010.webservice.cxf.server.servlet;import javax.servlet.ServletConfig;import javax.xml.ws.Endpoint;import org.apache.cxf.transport.servlet.CXFNonSpringServlet;import com.crazycoder2010.webservice.cxf.server.HelloWorldServiceImpl;public class WebServiceServlet extends CXFNonSpringServlet {private static final long serialVersionUID = -5314312869027558456L;@Overrideprotected void loadBus(ServletConfig servletConfig) {super.loadBus(servletConfig);System.out.println("#####################");Endpoint.publish("/helloWorldService", new HelloWorldServiceImpl());}}2.复写loadBus类
在这个方法当中把我们要对外提供的服务配置在里面,比如我们的服务名称为helloWorldService--注意这个方法只在第一次访问时才被触发,也就是我们那行打印语句只执行一遍
3.配置WebServiceServlet
在web.xml中对我们的servlet进行配置,这里为了统一管理所有的webservice请求,我们将webservice统一放在/webservice/路径下(相对)
- <servlet>
- <servlet-name>webservice</servlet-name>
- <servlet-class>com.crazycoder2010.webservice.cxf.server.servlet.WebServiceServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>webservice</servlet-name>
- <url-pattern>/webservice/*</url-pattern>
- </servlet-mapping>
<servlet> <servlet-name>webservice</servlet-name> <servlet-class>com.crazycoder2010.webservice.cxf.server.servlet.WebServiceServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>webservice</servlet-name> <url-pattern>/webservice/*</url-pattern> </servlet-mapping>4.启动tomcat服务器通过http://localhost:8080/CXF-Server/webservice/helloWorldService?wsdl访问webservice是不是看到和第一节同样的东东了
0 0
- CXF学习笔记(3)-HelloWorld!-通过servlet发布webservice
- CXF学习笔记(3)-HelloWorld!-通过servlet发布webservice .
- CXF学习笔记(1)-HelloWorld!-发布webservice
- CXF学习笔记(1)-HelloWorld!-发布webservice
- CXF学习笔记(1)-HelloWorld!-发布webservice .
- CXF学习笔记(1)-HelloWorld!-发布webservice
- CXF学习笔记(1)-HelloWorld!-发布webservice
- CXF—六天系列—第三天—HelloWorld!-通过servlet发布webservice .
- CXF—六天系列—第四天—HelloWorld!-通过servlet发布webservice . .
- WebService学习笔记-使用CXF发布Webservice
- WebService CXF学习:HelloWorld
- CXF: 入门发布HelloWorld为WebService
- 【WebService】通过CXF发布WebService第一例
- 【WebService】通过CXF发布WebService第一例
- WebService CXF学习笔记
- WebService CXF学习(入门篇2):HelloWorld
- OSGI通过CXF发布WebService第一例
- 通过CXF发布WebService第一例
- 11g r2 模拟OCR和voting disk不可用,完整恢复过程,以及一些注意事项
- 聊聊JVM(四)深入理解Major GC, Full GC, CMS
- 通过Struts标签和JSTL标签来遍历List<Map<String,String>>格式的数据
- equals 与“=”比较
- J2EE vs. Microsoft.NET-建置XML架构的Web Services之比较
- CXF学习笔记(3)-HelloWorld!-通过servlet发布webservice .
- git 删除远程仓库命令
- Shutting down interface eth0: Error: Device 'eth0' (/org/freedesktop/NetworkManager/Devices/0) disc
- Class<T>类型参数(详解)
- Java SE Lesson 4
- UML学习手册
- post和get最大传输量
- Android Service完全解析,关于服务你所需知道的一切(下)
- XMPP框架使用之搜索协议