`

webservice CXF总结

阅读更多

 

1.Web Service技术,能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件,就可相互交换数据或集成。依据Web Service规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。

 


 

 

 

2.

SOAP:

即简单对象访问协议(Simple Object Access Protocol)
它是用于交换XML(标准通用标记语言下的一个子集)编码信息的轻量级协
XML-envelope为描述信息内容和如何处理内容定义了框架,将程序对象编码成为XML对象的规则,执行远程过程调用(RPC)的约定。
   XML-envelope—(code)-àXML
SOAP

可以运行在任何其他传输协议上

 
 

3.wsdl:

 

就是用机器能阅读的方式提供的一个正式描述文档而基于XML(标准通用标记语言下的一个子集)的语言,用于描述Web Service及其函数、参数和返回值。


 
  命名空间要相同
 

 

 

 

 

 

4.CXF实现WebService:

 

Apache CXF的官方网站如下:
1.先建立新的web project
 


 

2.导入lib包

 

3. 根据wsdl文件反向生成服务端

 

CXF提供了这样的工具----wsdl2java
配置CXF环境变量:
CXF_HOME=E:\Java\webservice\apache-cxf-2.7.15,以及在path中增 %CXF_HOME%/bin
注意:需要jdk 1.7以下,1.8会报错。使用wsdl2java -h可以检测是否成功。
使用cmd打开,到cxf/bin下:


 

 
然后在bin目录下生成代码:
 



 
 

 

然后需要修改一个地方,就是在接口的实现类中把
wsdlLocation="file:/C:/Users/80575749/Desktop/OnePNS/SoapNotification.wsdl“
给删除,不然等会运行是会提示找不到这个wsdl文件
 



 

 

4.把生成的代码复制进项目并创建applicationContext.xml配置文件:




 

注意:ScfMobileSoap.java 其实可以删除

 

添加配置内容

 

<beans xmlns="http://www.springframework.org/schema/beans"  
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
     xmlns:jaxws="http://cxf.apache.org/jaxws"  
     xsi:schemaLocation="  
 http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd  
 http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">  
   
     <import resource="classpath:META-INF/cxf/cxf.xml" />  
     <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />  
     <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />  
   
     <jaxws:endpoint   id="ScfPccSoapService"   
       implementor="com.soap.ScfPccSoapServiceEndpointImpl"   
       address="/soap" />  
         
 </beans> 

 


 5.添加web.xml:

 



 

<context-param>  
         <param-name>contextConfigLocation</param-name>  
         <param-value>/WEB-INF/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>/services/*</url-pattern>  
     </servlet-mapping>  

 

 

6.部署到Tomcat

 

 

 

5.CXF生成Client:

方法与生成Server类似:

在cmd中输入如下命令:

 生成client代码

 

1. 导入lib包,把生成的java文件复制到client项目内

包与接口与服务端相同(只需要写接口)
 



 

Ps:包可以不相同,但是需要修改applicationContext.xml中的bean定义和接口实现类中的注解:endpointInterface的包路径
 

2.配置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:jaxws="http://cxf.apache.org/jaxws"
    xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schema/jaxws.xsd">

    <bean id="ScfPccSoap" class="com.soap.ScfPccSoapServiceEndpoint" 
          factory-bean="clientFactory" factory-method="create"/>
    
    <bean id="clientFactory" class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
        <property name="serviceClass" value="com.soap.ScfPccSoapServiceEndpoint"/>
        <property name="address" value="http://localhost:8080/OnePNSServer/services/soap?wsdl"/>
        
    </bean>
      
</beans>

 

 

3.写一个Run类来运行客户端:



 

 


 4.关闭cxf的log Debug

<logger name="org.apache.cxf" level="warn" />

 

5.Use jmeter to test

url:http://ip:port/server name/path/soap?wsdl

把soap协议写在data那里,因为走的也是http协议,所以可以call by manual
 

  • 大小: 13.7 KB
  • 大小: 971 Bytes
  • 大小: 776 Bytes
  • 大小: 131.2 KB
  • 大小: 48 KB
  • 大小: 54.9 KB
  • 大小: 109.1 KB
  • 大小: 12.1 KB
  • 大小: 8.5 KB
  • 大小: 4.7 KB
  • 大小: 26.5 KB
  • 大小: 23.8 KB
  • 大小: 14.3 KB
  • 大小: 8.5 KB
  • 大小: 46.1 KB
  • 大小: 139.4 KB
  • 大小: 1.4 KB
  • 大小: 79.9 KB
  • 大小: 55.2 KB
  • 大小: 40.9 KB
  • 大小: 9.5 KB
分享到:
评论

相关推荐

    WebService CXF 详细教程

    **WebService CXF 详解** **一、WebService简介** WebService是一种基于标准的,可以在不同操作系统、编程语言之间交换数据的Web应用程序。它通过WSDL(Web服务描述语言)定义了服务接口,利用SOAP(简单对象访问...

    webservice cxf_demo

    【标题】"webservice cxf_demo" 涉及到的是使用Apache CXF框架创建的Web服务示例项目。在Web服务的世界里,CXF是一个流行的开源工具,它支持SOAP和RESTful风格的服务,用于构建和消费Web服务。这个"CXF_demo"很可能...

    webservice cxf集成servlet

    ### WebService CXF与Servlet集成详解 #### 一、项目准备与搭建 ##### 1. 创建Web Project - **项目命名**:首先,在开发环境中创建一个新的Web项目,并将其命名为`cxf_bigdata`。 ##### 2. 目录结构 - 项目的...

    webService(基于cxf)的完整例子

    总结来说,基于CXF的Web服务示例提供了一个完整的流程,从创建服务接口、实现服务逻辑、配置服务到测试服务,涵盖了Web服务开发的各个方面。通过学习这个例子,开发者可以掌握CXF的基本使用方法,进一步拓展到更复杂...

    WebService CXF 对象传递 附

    **WebService CXF 对象传递详解** 在Web服务领域,CXF是一个非常重要的开源框架,它允许开发者创建和消费各种Web服务。CXF支持SOAP、RESTful等多种通信模式,并且能够处理复杂的对象传递,使得Web服务的数据交换...

    WebService CXF学习文档

    WebService CXF学习——入门篇 1.CXF由来 2.HelloWorld 3.WSDL描述 WebService CXF学习——进阶篇 1.SOAP讲解 2.JAX-WS讲解 3.对象传递 WebService CXF学习——高级篇(一)(二) 1.整合Spring框架 2.CXF...

    webservice cxf.jar 相关包

    标题中的“cxf.jar”指的是Apache CXF的核心库文件,它是Apache CXF框架的基础,包含了处理Web服务请求和响应所需的所有核心组件。这个JAR文件通常会被添加到Java项目的类路径中,以便利用CXF的功能。 描述中提到的...

    WebService CXF 对应版本及资源

    WebService CXF 用了一天时间找,官网打不开,国内要积分,下下来又永不了。最后终于搞到手,上传上来分享给大家。 jdk版本 CXF版本 java 9及以上 3.3.x java 8 3.x java 7 2.2x --- 3.2之前版本 java 6 3.1 ...

    Java webservice cxf客户端调用demo和服务端

    Java WebService CXF客户端调用和服务端的实现是企业级应用程序中常见的通信方式,它基于标准的SOAP(Simple Object Access Protocol)协议,提供了一种在分布式环境中交换信息的方法。CXF是一个开源框架,它简化了...

    WebService CXF 开发教程

    WebService CXF 开发教程 eclipse插件配置 开发及代码说明

    webservice cxf 整合spring例子源代码

    【标题】:Webservice CXF 整合Spring的实例源码解析 在Web服务开发中,Apache CXF是一个广泛使用的开源框架,它提供了创建、部署和管理Web服务的强大功能。CXF不仅支持SOAP,还支持RESTful API,使得开发者能够...

    WebService CXF --- 传输文件MTOM

    WebService CXF,全称Apache CXF,是一款开源的Java框架,用于构建和开发Web服务。它支持多种协议和规范,包括SOAP、RESTful、XML以及Web服务标准如WS-*。在"WebService CXF --- 传输文件MTOM"这个主题中,我们将...

    WebService CXF使用说明

    总结来说,WebService CXF 是一个强大且灵活的工具,用于构建符合标准的 Web 服务。通过与 Spring 的紧密集成,它提供了一种高效、易于管理的开发方式,同时在权限控制和安全性方面也提供了丰富的支持。无论是服务端...

    webservice-cxf-spring-jar.zip

    【标题】"webservice-cxf-spring-jar.zip" 是一个包含了使用Apache CXF与Spring框架集成开发Web服务的Java库集合。这个压缩包提供了一整套必要的JAR文件,以便于开发者在他们的项目中快速搭建和运行基于CXF的Web服务...

    webservice cxf jar包

    【标题】"Webservice CXF Jar包"是一个用于构建Web服务的开源框架,它整合了Apache CXF项目的核心库。这个包中包含了多个组件和依赖,以支持开发、部署和运行基于SOAP和RESTful风格的Web服务。 【描述】提到的...

    webservice cxf的demo和相关文档

    最近公司要用到webservice ,最后经过对比、考虑选择cxf,最近在网上找了一些资料写的很零散,如果是新手的话还得查很多资料,比较麻烦,所以将cxf开发中使用的资料和要用到的工具与大家分享,并附上自己测试的demo,以...

    webservice_cxf Demo

    总结来说,"webservice_cxf Demo" 是一个学习 Apache CXF 开发 Web 服务的实践项目,涵盖了从服务定义、实现、部署到客户端调用的全过程。通过这个示例,开发者可以深入理解 CXF 的工作原理和使用方法,为构建自己的...

    SpringBoot WebService cxf接口发布以及logbok日志集成

    总结起来,SpringBoot结合cxf提供了方便的Web服务开发体验,而logback则为我们提供了强大的日志管理能力。通过这两个组件的集成,我们可以构建出既易于开发又具有良好日志监控的Web服务系统。对于初学者来说,理解并...

    webservice cxf 开发实战

    【标题】"WebService CXF 开发实战"涵盖了在Java环境中使用Apache CXF框架进行Web服务开发的关键技术。Apache CXF是一个开源项目,它提供了一种简单且强大的方式来实现和消费SOAP和RESTful Web服务。CXF允许开发者...

    webservice cxf+spring maven项目

    总结来说,"webservice cxf+spring maven项目"是一个适合初学者的示例,它展示了如何利用CXF、Spring和Maven构建、部署和测试Web服务。这个项目涵盖了Web服务的基本概念,以及CXF和Spring在Web服务中的实际应用,为...

Global site tag (gtag.js) - Google Analytics