CXF学习笔记(3)-HelloWorld!-通过servlet发布webservice

CXF学习笔记(1)-HelloWorld!-发布webservice

前面有篇文章介绍了发布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());
	}
}
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>
4.启动tomcat服务器通过http://localhost:8080/CXF-Server/webservice/helloWorldService?wsdl访问webservice是不是看到和第一节同样的东东了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值