加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

CXF框架实现webservice实例

发布时间:2020-12-16 22:00:30 所属栏目:安全 来源:网络整理
导读:服务器 端 : 1.新建Web项目,例如CXF_Server,导入cxf-2.4.2的相关jar包,如下图所示: 2.新建一个webservice服务接口MyService ,该接口通过注解来暴露服务 :? package?com.founder.service;import?javax.jws.WebService;@WebService(serviceName="MyServ

服务器

1.新建Web项目,例如CXF_Server,导入cxf-2.4.2的相关jar包,如下图所示:

wKiom1giwYbijnsZAABWlNQWbxA214.jpg-wh_50


2.新建一个webservice服务接口MyService,该接口通过注解来暴露服务:?

package?com.founder.service;

import?javax.jws.WebService;

@WebService(serviceName="MyServiceManage")
public?interface?MyService?{
	/**
	?*?add():定义add方法
	?*?@param?a
	?*?@param?b
	?*?@return
	?*/
	public?int?add(int?a,int?b);

}

3.写出该接口的实现类MyServiceImpl:

package?com.founder.service;

public?class?MyServiceImpl?implements?MyService?{
	
	@Override
	?public?int?add(int?a,?int?b)?{??
		System.out.println(a?+?"+"?+?b?+?"="?+?(a?+?b));??
		return?a+b;??
???}?

}

4.配置spring,把webservice类托管给spring,然后在src下新建spring的配置文件applicationContext.xml:

<?xml?version="1.0"?encoding="UTF-8"?>
<beans
	xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p"
	xmlns:jaxws="http://cxf.apache.org/jaxws"
	xsi:schemaLocation="http://www.springframework.org/schema/beans?http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
	?http://cxf.apache.org/jaxws?http://cxf.apache.org/schemas/jaxws.xsd">
	?
	?<bean?id="myServiceImpl"?class="com.founder.service.MyServiceImpl"></bean>
	?
?<!--?配置cxf???
?????地址:??????http://localhost:8080/CXF_Server/ws/employeeManager
?????组成?:??http://localhost:8080?+CXF_Server(?项目名)+ws(过滤的路径)+/myService(自定义部分)
?????服务类?:
?????服务的实现类:
?????拦截器??
??????-->
??<jaxws:server?address="/myService"?serviceClass="com.founder.service.MyService">
???<jaxws:serviceBean>
????<ref?bean="myServiceImpl"/>
???</jaxws:serviceBean>
??</jaxws:server>
</beans>

5.配置web.xml:

<?xml?version="1.0"?encoding="UTF-8"?>
<web-app?xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"?xmlns="http://java.sun.com/xml/ns/javaee"?xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"?xsi:schemaLocation="http://java.sun.com/xml/ns/javaee?http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"?version="3.0">
??<display-name>CXF__Server</display-name>
??
??<!--?添加??CXF?的Servlet?,处理?webservice的请求?-->
??<servlet>
??	<servlet-name>cxfServlet</servlet-name>
??	<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
??	<load-on-startup>0</load-on-startup>
??</servlet>
??<servlet-mapping>
???	<servlet-name>cxfServlet</servlet-name>
???	<url-pattern>/ws/*</url-pattern>
??</servlet-mapping>
??
??<listener>
????<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
??</listener>
??<context-param>
????<param-name>contextConfigLocation</param-name>
????<param-value>classpath:applicationContext.xml</param-value>
??</context-param>
</web-app>

????

????至此服务器端基本上告一段落,可以将应用部署到tomcat,启动并访问http://localhost:8080/CXF_Server/ws/myService?wsdl,如果能正确显示xml文件则说明部署成功。?


客户端测试

1.通过myeclipse自带的soap浏览器完成测试,就不用在客户端写java代码了:

点击图标所示按钮,即可启动soap浏览器。


wKiom1giyb_znKAdAABzsSWp7t4962.jpg


2.点击右侧图标所示的按钮wsdl page,在输入框中输入wsdl地址:

wKiom1giy8ahj5anAACllNAsvH0399.jpg

3.点击里面的add()方法,输入参数,点击go,即可显示调用结果


wKiom1gizKLAkG1UAADUDqX0WDk800.jpg


OK,实例完成!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读