WebService-CXF_配置文件篇

【WebService】springboot整合cxf实现webService远程调用 一、前言        在做接口对接的时候需要接口以HTTPS和WebService的形式暴露,虽然最近这几年restful非常火爆,但在一些特定的领域或者一些老旧系统中仍然采用WebService的形式来实现远程通信。       上一篇博客讲了WebService实现远程调用,在博文的最后,自己阐述了关于那种客户端调用存在的问题,如大家有疑问,欢迎留言区指正。二、实现       废话上一篇博... 阅读详情

CXF的下载安装,环境变量的配置,jar包的添加,就不多说了


一、服务器端
先上组织结构图:


1.新建一个普通的WEB工程,不需要是Web Service
2.Java类
package pro.webws.client;

import javax.jws.WebParam;
import javax.jws.WebService;

@WebService
public interface ICxf {
	public String sayHello(@WebParam(name = "arg0") String name);

	public String sayBye(@WebParam(name = "arg0") String name);
}
接口实现
package pro.webws.client;

import javax.jws.WebService;

@WebService(endpointInterface = "pro.webws.client.ICxf")
public class CxfImpl implements ICxf {
	public String sayHello(String name) {
		return "Hello:" + name;
	}

	public String sayBye(String name) {
		return "ByeBye:" + name;
	}
}
3.配置文件(主要添加的已红色标注)
applicationContext.xml <id任意>
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
<span style="white-space:pre">	</span>xmlns:p="http://www.springframework.org/schema/p"
	xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:cxf="http://cxf.apache.org/core"
	xsi:schemaLocation="http://www.springframework.org/schema/beans   
   <span style="white-space:pre">		</span> http://www.springframework.org/schema/beans/spring-beans-2.5.xsd   
    <span style="white-space:pre">		</span>http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">

	<jaxws:endpoint id="abc" implementor="pro.webws.client.CxfImpl" address="/Cxf" />

</beans>
4.web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
	<display-name></display-name>

	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:applicationContext.xml</param-value>
	</context-param>

	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>

	<servlet>
		<servlet-name>CXFServlet</servlet-name>
		<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>CXFServlet</servlet-name>
		<url-pattern>/*</url-pattern>
	</servlet-mapping>


	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
</web-app>
在浏览器中输入:http://localhost:8080/webws/Cxf?wsdl
窗口出现一大堆xml内容,及说明服务器端配置成功
仔细浏览xml内容,能够找到我们写的sayHello和sayBye方法名。

二、客户端(方法一)


1.新建一个普通的WEB工程,不需要是Web Service
2.spring.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" 
<span style="white-space:pre">	</span>xmlns:p="http://www.springframework.org/schema/p"
	xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:cxf="http://cxf.apache.org/core"
	xsi:schemaLocation="http://www.springframework.org/schema/beans   
   <span style="white-space:pre">		</span> http://www.springframework.org/schema/beans/spring-beans-2.5.xsd  
   <span style="white-space:pre">		</span> http://cxf.apache.org/jaxws   
    <span style="white-space:pre">		</span> http://cxf.apache.org/schema/jaxws.xsd">

<span style="white-space:pre">	</span><bean id="client" class="pro.webws.client.ICxf" factory-bean="clientFactory" factory-method="create" />  
          
   <span style="white-space:pre">	</span><bean id="clientFactory" class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">  
    <span style="white-space:pre">	</span>    <property name="serviceClass" value="pro.webws.client.ICxf" />  
    <span style="white-space:pre">	</span>    <property name="address" value="http://localhost:8080/webws/Cxf" />      
  <span style="white-space:pre">	</span></bean>
</beans>
3.Java类
ICxf.java与服务器端的接口一样,直接复制粘贴
测试类Test.java
package pro.webws.client;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {
	public static void main(String[] args) {
		ApplicationContext ctx = new ClassPathXmlApplicationContext("spring.xml");
		ICxf cxf= (ICxf) ctx.getBean("client");
		String name = (String) cxf.sayHello("Tom");
		System.out.println(name);
		String name2 = (String) cxf.sayBye("Jerry");
		System.out.println(name2);
	}
}
输出结果:



注:运行测试时,若报错,就将客户端的jcl-over-slf4j-1.7.7.jar该架包删除
若还报错,就根据提示百度找结果吧

客户端(方法二)<编程式,不用配置文件>
1.接口类,ICxf.java与服务器端的接口一样,直接复制粘贴
2.测试类 ,Test.java
package pro.webws.client;

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;

public class Test {
	public static void main(String[] args) {
		JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();  
        <span style="white-space:pre">	</span>factory.setAddress("http://localhost:8080/webws/Cxf");  
        <span style="white-space:pre">	</span>factory.setServiceClass(ICxf.class);  
        <span style="white-space:pre">	</span>ICxf cxf = (ICxf) factory.create();  
        <span style="white-space:pre">	</span>String name = (String) cxf.sayHello("Tom");
		System.out.println(name);
		String name2 = (String) cxf.sayBye("Jerry");
		System.out.println(name2);
	}
}
3.jar包(精简版)

最精简的jar包,如果使用到CXF其他功能,自行添加jar包



欧拉......














cxf调用webservice 引入jar <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxws</artifactId> <version>3.1.11</version> </dependency> <dependency><groupId>org.apache.cxf&lt 阅读详情

相关推荐

SpringBoot 集成CXF开发WebService

参考文章传送门:https://www.dexcoder.com/selfly/article/4593 Apache CXF 介绍 Apache CXF 是一个开源的 Services 框架,CXF 帮助您利用 Frontend 编程 API 来构建和开发 Services ,像 JAX-WS 。这些 Services 可以支持多种协议,比如:SOAP、XML/HTTP、RESTf...

飞鸟的轨迹 1795

CXF创建WebService服务配置说明

使用CXF框架创建WebService服务,不需要使用tomcat发布

weixin_46090515的博客 1165

CXF开发WebService接口及调用示例

一.CXF开发一个WebService接口示例 1.Maven主要依赖 <!-- webservice 接口 --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-transports-http&lt...

汉南最後の読書人 1584

CXF配制怕以后忘了

一、webservice的配制文件 applicationContext-webservice.xml     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws"     xmlns:cxf="http://cxf.apache.org/core

maqingbin8888的专栏 445

WebService应用之CXF集成spring详解

Berkeley DB XML入门 一、Berkeley DB XML安装及使用 在http://www.oracle.com/technology/global/cn/products/berkeley-db/xml/index.html下载BerkeleyDB XML的安装文件(dbxml-2.4.16.rar)进行安装。 完装完成后,重启计算机。 使用方法: 1、 通过cmd窗口,输入dbxml即可进入到BerkeleyDB XML的客户端窗口。可执行XQuery语句。 2、 通过JavaAPI来访问

lancui1110的专栏 2263

C#海康威视摄像头控制,将IntPtr转换成Bitmap图片

C#通过skd控制海康威视摄像头,获取bitmap格式图片

ReflexMechanism的博客 6586

java cxf 入口统一_WebService-CXF_配置文件篇

 包名CXF的下载安装,环境变量的配置,jar包的添加,就不多说了 一、服务器端 先上组织结构图: 1.新建一个普通的WEB工程,不需要是Web Service 2.Java类 package pro.webws.client;import javax.jws.WebParam;import javax.jws.WebService;@WebServicepublic interface...

weixin_39855634的博客 589

echarts实现3D地图——map3D

【代码】echarts实现3D地图——map3D。

xiaoququ的博客 7323

WebService--CXF与Spring的整合(jaxws:endpoint形式配置)以及客户端调用(spring配置文件形式,不需要生成客户端代码)

作者:@展云 本文为作者原创,转载请注明出处:https://www.cnblogs.com/zhanxiaoyun/p/7942902.html 目录 一、CXF与Spring整合(jaxws:endpoint形式配置) 1.新建一个maven项目 2.web.xml文件中配置CXFServlet以及Spring容器,配置Spring的配置文件,配置webservice的配置文件二、客户端调...

a3289780的博客 1534

基于python+flask框架的基于微信小程序的CR公司建设项目信息管理系统-前台(开题+程序+论文) 计算机毕设

特别是随着移动互联网技术的普及,企业对便捷、高效的信息管理系统的需求日益迫切。另一方面,该系统集成了仓管、物料、财务、人事、供应商等多个模块,实现了数据的集中管理和信息共享,有助于企业实现精细化管理,降低运营成本,提升决策效率。:深入调研CR公司的业务需求,明确系统应具备的功能模块,包括仓管员管理模块(物料信息、退回记录、申请信息、仓库信息管理)、财务员管理模块(资金信息管理、采购与租赁款项处理)、人事管理模块、供应商管理模块、项目管理模块(项目信息、设备采购、物料采购、设备租赁)、以及考勤打卡模块等。

zhihao503的博客 960

《UE4游戏开发》之 《音效系统的实现》

音效系统需要负责管理什么事情: 1.1 确定声音控制的分类:如背景音乐、技能音效、界面音效、角色配音等,不同游戏对声音有不同的分类 1.2 控制每个分类的声音的开启与关闭,以及调节每个分类声音的大小 解决如何分类: 2.1 首先需要知道ue4为声音分类提供了什么:SoundClass通常需要一个根分类【SC_RPG_Master】,便于总体控制音效,以及指定引擎默认启动的音效 打开SoundClass资产【SC_RPG_Master】,对根控制的设置,将逐级传递并按比例进行设置,以此达到控制一类声音的目的.

qq_21919621的博客 2126

Spring Boot 集成 CXF创建多个Endpoint的WebService服务(完整版)

1、首先创建Spring Boot项目,在pom.xml添加CXF包支持 <!-- 添加 CXF --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-spring-boot-starter-jaxws</artifactId>...

createfly111的专栏 1万+

如何实现三种不同RAM?(单端口RAM、伪双端口RAM、真双端口RAM|verilog代码|Testbench|仿真结果)

RAM(随机存取存储器)是计算机系统中的一种主要存储器件,用于存储和读取数据。在RAM中,单端口RAM(Single-port RAM)和双端口RAM(Dual-port RAM)是两种常见的类型,双端口RAM又分为真双端口(True dual-port RAM)和伪双端口RAM(Simple dual-port RAM)。那么什么是单端口和双端口?又该如何区分真双端口和伪双端口?输入只有一组数据线和一组地址线,读写共用地址线,输出只有一个端口。

Loudrs的博客 1万+

Maven下 Spring 集成 CXF发布webservice服务

工作上遇到了需要在spring上集成CXF,踩了不少坑,故此记录下。

lova_k3的博客 378

深入浅出DNS系列(一)- DNS杂谈

黄丝玛:班达山,你好,我记性不好,你告诉我搜狐、新浪的网站IP地址好吗? 班达山:你问问DNS先生吧,他专门干这买卖的

jiangsd198的博客 4129

AUTOSAE软件配置-达芬奇( DaVinci Configurator)从新建工程开始

方法1,直接使用案例工程,一般SIP包会有一个创建好的案例工程,在这样的路径YOUR_SIP_DIR/Applications/SipAddon/StartApplication下面直接打开这个*.dpa文件即可看到已经预先做好的工程:但是,这个也不是全的,也不一定完全正确,至少MCAL是没有配置好的(MCAL是IC厂商提供的,并不归属SIP包的一部分)。这样就需要你自己去配置你想要的模块,修改里面的错误。

m0_49148264的博客 2944

【WebService框架-CXF】——WebService和CXF

在接下来的几篇博客中将对CXF的基础知识和简单应用进行总结。下面列出了要总结的内容。本篇文章集中介绍CXF的基础知识。 CXF博客总结目录WebService和CXF基础知识 CXF入门实例(编写客户端和服务端) CXF对Map等无法自动转化的类型的处理 CXF添加普通拦截器和自定义拦截器 CXF+Spring+自定义拦截器构建WebService服务端 CXF+Spring+Struts

To Begin,Begin   2403

《Python星球日记》 第73天:情感分析与主题建模

《Python星球日记》 第73天:情感分析与主题建模,今天我们将探索两个自然语言处理领域的重要技术:情感分析和主题建模。这两项技术在社交媒体分析、用户反馈处理、市场研究等多个领域有着广泛应用。

Code_流苏:在代码中寻诗意,在实践中觅真知 919

用CXF发布WebService

首先去网上下载CXF的jar包,我下载的是cxf2.7.4的。新建一个Web工程,将CXF的所有jar包全部引入,在web.xml中增加CXFServlet的配置,代码如下: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javae...

风萧萧兮易水寒,壮士一去兮不复还 2601

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

使用cxf发布webservice接口,以及调用webservice接口

一、cxf发布webservice接口 添加maven依赖 <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-core</artifactId> <version>3.4.3</version> </dependency> <de

qq_20161461的博客 1万+

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

WebService之CXF框架

本文主要包括以下内容 ant工具的使用利用cxf实现webservicecxf与spring整合 ajax访问webservice ant 工具 1、为什么要用到ant这个工具呢? Ant做为一种工具已经广泛被使用,并且历史悠久。 使用ant的内置命令,可以编译java源文件(javac),运行java文件(java),给class文件打包(jar、war、ear), 也可以创建(mkdir)、删除...

lgxzzz的博客 1539

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

CXF开发WebService客户端

 开发必备1.apache-cxf-2.2.62.spring-ws-1.5.83.eclipse-jee-galileo-SR1-win32 开发步骤:一、新建一个普通的java工程,名字叫WebService_CXF_Client二、导入apache-cxf-2.2.6 及 spring-ws-1.5.8 下的jar包三、启动《CXF开发WebService

yyb_gz的专栏 6204

使用CXF和camel-cxf调用webservice

CXF是什么 Apache CXF 是一个开源的、全功能的WebService框架,它提供了一套工具和API来帮助开发和构建WebService,像 JAX-WS 和 JAX-RS。它也支持许多WebService标准,例如: SOAP WS-Addressing WS-Policy WS-ReliableMessaging WS-SecureConversation W...

刘刚的空间 2081

webservice入门之CXF教程

1.CXF简介     Apache CXF是一个开源的Service框架,可以用于简化用户的service开发,基于CXF开发的应用可提供SOAP、XML/HTTP、RESTFUL HTTP或CORBA等服务。CXF底层页可以使用不同的传输协议,包括HTTP、JMS或JBI等。     根据CXF官方的说明,CXF包含以下特性:     支持大量的Web Service标准,包括S

longshengguoji的专栏 2万+

Springboot 基于CXF构建WebService服务

前言 最近因为系统需要接入了一个新的支付通道,一般来说都是使用RestApi 来接入,但是本次接入的支付通道为境外支付,使用的WebService,对于WS我们在实际业务中基本上不会用到,所以查阅了一些资料,记录一下自己项目中使用的WS。 WebService概述 什么是WebService Web Service技术,能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可相互交换数据或集成。依据Web Service规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,

蜀道难,难于上青天。 2158

WebService-CXF

WebService-CXF 注:如果只想开发一个简单的WebService,蓝色标注的文字可以不看。 红色字体是需要注意的地方。   简介:Apache CXF  ==  Celtix + Xfire, CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持. CXF 既支持 WSDL 优先开发,也支持从 Java 的代码优先开发模式。容易

单眼皮的猫 4733
上一篇: Webservice-CXF
下一篇: WebService-wsimport
Flykos
博客等级 码龄12年 14粉丝 29原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值