CXF发布WebServices

CXF Web 服务部署
本文介绍如何使用Apache CXF框架部署Web服务。通过创建一个简单的CXFServlet,注册服务并实现基本的功能调用。此外,还展示了如何配置web.xml以支持服务请求。

一、编写servlet

 

package com.rick.servlet;



import javax.servlet.ServletConfig;

import org.apache.cxf.frontend.ServerFactoryBean;
import org.apache.cxf.transport.servlet.CXFNonSpringServlet;

import com.rick.test.testCXF;

@SuppressWarnings("serial")
public class CXFWebServices extends CXFNonSpringServlet {

	  

	public void registService(String serviceName, Object impl)
	  {
//	    JaxWsServerFactoryBean svcFactory = new JaxWsServerFactoryBean();
//	    svcFactory.setServiceClass(impl.getClass());
//	    svcFactory.setAddress("/" + serviceName);
//	    svcFactory.setServiceBean(impl);
//	    Server tsWsEndPointServer = svcFactory.create();
//	    tsWsEndPointServer.start();
		
		 ServerFactoryBean svrFactory = new ServerFactoryBean();
		 svrFactory.setServiceClass(impl.getClass());
		 svrFactory.setAddress("/" + serviceName);
		 svrFactory.setServiceBean(impl);
		 svrFactory.create();

	  }

	  public void loadBus(ServletConfig servletConfig)
	  {
	    super.loadBus(servletConfig);
	    try {
			registService(testCXF.class.getSimpleName(), testCXF.class.newInstance());
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		}
	  }

}


二、编写发布服务的类

package com.rick.test;

public class testCXF {

	public String getHello(String name){
		return "hello " + name;
	}
}


三、web.xml添加servlet

	<servlet>
		<servlet-name>WebServletXfire</servlet-name>
		<servlet-class>com.rick.servlet.CXFWebServices</servlet-class>
		<load-on-startup>0</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>WebServletXfire</servlet-name>
		<url-pattern>/services/*</url-pattern>
	</servlet-mapping>


四、在web中的lib目录添加必要的jar

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值