CXF创建WebService服务配置说明

本文介绍了如何在Eclipse环境下,利用CXF框架创建一个不需要Tomcat即可启动的WebService服务。首先创建Java项目,然后添加必要的jar包引用,接着编写服务接口和服务实现类,最后通过ServerFactoryBean发布服务,并提供了一个URL.properties配置文件来设定服务地址。发布成功后,服务可以通过浏览器访问验证。
摘要由CSDN通过智能技术生成

使用CXF创建WebService服务

1、描述
使用CXF创建WebService服务样例,使用CXF创建的服务不需要安装Tomcat也可以启动。
2、开发环境
Eclipse开发工具,JDK1.7或JDK1.8
3、配置部署说明
3.1、创建工程
• File->new
选择Java Project,然后选择Next。
在这里插入图片描述
• 输入项目名称:com.TCM.TestWebService,选择Finish
在这里插入图片描述
• 完整项目创建

在这里插入图片描述
3.2、添加引用jar包
• 创建lib文件夹:选中工程右键->NEW->Folder;
输入文件夹名称:lib,然后点击Finish
在这里插入图片描述
• 将以下jar添加到lib中并引用;(CXF框架需要使用到的jar包)
1) activemq-broker-5.8.0.jar
2) activemq-client-5.8.0.jar
3) activemq-openwire-legacy-5.8.0.jar
4) antlr-2.7.7.jar
5) aopalliance-1.0.jar
6) asm-3.3.1.jar
7) commons-codec-1.7.jar
8) commons-collections-3.2.1.jar
9) commons-lang-2.6.jar
10) commons-logging-1.1.1.jar
11) cxf-2.7.7.jar
12) cxf-manifest.jar
13) cxf-services-sts-core-2.7.7.jar
14) cxf-services-ws-discovery-api-2.7.7.jar
15) cxf-services-ws-discovery-service-2.7.7.jar
16) cxf-services-wsn-api-2.7.7.jar
17) cxf-services-wsn-core-2.7.7.jar
18) cxf-xjc-boolean-2.6.2.jar
19) cxf-xjc-bug671-2.6.2.jar
20) cxf-xjc-dv-2.6.2.jar
21) cxf-xjc-runtime-2.6.2.jar
22) cxf-xjc-ts-2.6.2.jar
23) ehcache-core-2.5.1.jar
24) FastInfoset-1.2.12.jar
25) geronimo-j2ee-management_1.1_spec-1.0.1.jar
26) geronimo-javamail_1.4_spec-1.7.1.jar
27) geronimo-jaxws_2.2_spec-1.1.jar
28) geronimo-jms_1.1_spec-1.1.1.jar
29) geronimo-servlet_3.0_spec-1.0.jar
30) hawtbuf-1.9.jar
31) httpasyncclient-4.0-beta3.jar
32) httpclient-4.2.5.jar
33) httpcore-4.2.4.jar
34) httpcore-nio-4.2.4.jar
35) isorelax-20030108.jar
36) javax.ws.rs-api-2.0-m10.jar
37) jaxb-api-2.2.6.jar
38) jaxb-impl-2.2.6.jar
39) jaxb-xjc-2.2.6.jar
40) jettison-1.3.4.jar
41) jetty-continuation-8.1.12.v20130726.jar
42) jetty-http-8.1.12.v20130726.jar
43) jetty-io-8.1.12.v20130726.jar
44) jetty-security-8.1.12.v20130726.jar
45) jetty-server-8.1.12.v20130726.jar
46) jetty-util-8.1.12.v20130726.jar
47) joda-time-1.6.2.jar
48) js-1.7R2.jar
49) mina-core-2.0.7.jar
50) msv-core-2011.1.jar
51) neethi-3.0.2.jar
52) oauth-20100527.jar
53) oauth-provider-20100527.jar
54) opensaml-2.5.1-1.jar
55) openws-1.4.2-1.jar
56) relaxngDatatype-20020414.jar
57) slf4j-api-1.7.5.jar
58) slf4j-jdk14-1.7.5.jar
59) stax2-api-3.1.1.jar
60) velocity-1.7.jar
61) woodstox-core-asl-4.2.0.jar
62) wsdl4j-1.6.3.jar
63) wss4j-1.6.12.jar
64) xml-resolver-1.2.jar
65) xmlbeans-2.6.0.jar
66) xmlschema-core-2.0.3.jar
67) xmlsec-1.5.5.jar
68) xmltooling-1.3.2-1.jar
69) xsdlib-2010.1.jar
3.3、代码介绍
• 添加一个service接口类;
在这里插入图片描述
• 代码如下:

package com.service;

public interface service
{
	public String getString(String str);
}

	•	添加一个service的实现类;

在这里插入图片描述
• 代码如下:

package com.service;

public class serviceImpl implements service
{

	@Override
	public String getString(String str)
	{
		// TODO Auto-generated method stub
		System.out.println("HelloWorrd");
		return "【"+str+"】";
	}

}

	•	添加一个入口类:

在这里插入图片描述
• 代码如下:

package com.startMain;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import org.apache.cxf.frontend.ServerFactoryBean;
import org.apache.cxf.service.factory.MethodNameSoapActionServiceConfiguration;

import com.service.service;
import com.service.serviceImpl;


public class ServiceStartUp
{
	public static void main(String[] args)
	{
		//获取配置文件中的服务地址
		InputStream in = ServiceStartUp.class.getResourceAsStream("/Url.properties");
		Properties pop = new Properties();
		try
		{
			pop.load(in);
			in.close();
		}
		catch (IOException e)
		{
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		String url = pop.getProperty("URL");
	    System.out.println("服务发布路径:"+url);
		
	    serviceImpl serviceImpl = new serviceImpl();
        //cxf发布服务的工厂bean
        ServerFactoryBean svrFactory = new ServerFactoryBean();
        svrFactory.getServiceFactory().getConfigurations().add(new MethodNameSoapActionServiceConfiguration());
        //设置服务类
        svrFactory.setServiceClass(service.class);
        //设置服务地址
        svrFactory.setAddress(url);
        //设置服务bean
        svrFactory.setServiceBean(serviceImpl);
        svrFactory.create();
	}
}	

	•	添加URL.properties配置文件;

在这里插入图片描述

• 代码如下:

#服务发布路劲
URL=http://192.168.98.103:8091/WebService

	•	服务发布后通过浏览器查看:(出现如下界面则说明服务发布成功)

在这里插入图片描述

附件(应用jar包文件)
链接:https://pan.baidu.com/s/1cvM75fe0AeJwIq5kA0vTkg
提取码:zf3e

如有帮助到您,请您使用您高贵的手指点个赞,懒羊羊在此感谢您!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值