`

Webservice实战

 
阅读更多

参考链接:http://cxf.apache.org/docs/writing-a-service-with-spring.html

先说下cxf是什么东西吧:

Apache CXF 是一个开源的 Services 框架,CXF 帮助您利用 Frontend 编程 API 来构建和开发 Services ,像 JAX-WS 。这些 Services 可以支持多种协议,比如:SOAP、XML/HTTP、RESTful HTTP 或者 CORBA ,并且可以在多种传输协议上运行,比如:HTTP、JMS 或者 JBI,CXF 大大简化了 Services 的创建,同时它继承了 XFire 传统,一样可以天然地和 Spring 进行无缝集成。

 

一、SEI的定义

假设有以下SEI定义:

Java代码  收藏代码
  1. @WebService  
  2. public interface OrderProcess {  
  3.     public String processOrder(Order order);  
  4. }  

 (实现端省略)

 

二、Server端发布

则最简单的发布Server的方式可以如下:

 

Java代码  收藏代码
  1. Endpoint.publish("http://localhost:8181/orderProcess"new OrderProcessImpl());  

 

或者是spring的方式:

Xml代码  收藏代码
  1. <beans xmlns="http://www.springframework.org/schema/beans"  
  2.     xmlns:jaxws="http://cxf.apache.org/jaxws"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"  
  4.     xsi:schemaLocation="  
  5.        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd  
  6.        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd  
  7.        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">  
  8.   
  9.     <import resource="classpath:META-INF/cxf/cxf.xml" />  
  10.     <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />  
  11.     <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />  
  12.   
  13.     <jaxws:endpoint id="orderProcess"  
  14.         implementor="com.liulutu.liugang.cxf.jaxws.OrderProcessImpl" address="http://localhost:8090/orderProcess" />  
  15. </beans>  

 三、Client端调用

Java代码  收藏代码
  1. Service service = Service.create(new URL("<wsdlfilepath>"),  
  2.         new QName("namespace""servicename"));  
  3. OrderProcess port = orderProcessService.getPort(OrderProcess.class);  
  4. String s = port.processOrder(<arg>);  
  5. System.out.println(s);  

 或者Spring的方式:

Xml代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.        xmlns:jaxws="http://cxf.apache.org/jaxws"  
  4.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  5.        xsi:schemaLocation="  
  6.           http://www.springframework.org/schema/beans   
  7.           http://www.springframework.org/schema/beans/spring-beans.xsd  
  8.           http://cxf.apache.org/jaxws   
  9.           http://cxf.apache.org/schemas/jaxws.xsd">  
  10.    
  11.     <jaxws:client id="orderClient"  
  12.                   serviceClass="com.liulutu.liugang.cxf.codefirst.OrderProcess"  
  13.                   address="http://localhost:8181/orderProcess" />  
  14. </beans>  

 然后在java代码里:

Java代码  收藏代码
  1. ClassPathXmlApplicationContext xmlApplicationContext = new ClassPathXmlApplicationContext(  
  2.       "/META-INF/spring/jaxwsspringclient.xml");  
  3. OrderProcess bean = xmlApplicationContext.getBean(OrderProcess.class);  
  4. System.out.println(bean.processOrder(<order>)); 
分享到:
评论

相关推荐

    Java RESTful WebService实战

    Java restful和webservice接口, WebService有两种方式,一是SOAP方式,二是REST方式。SOAP是基于XML的交互,WSDL也是一个XML文档,可以使用WSDL作为SOAP的描述文件;REST是基于HTTP协议的交互,支持JSON、XML等交互...

    WebService实战

    一个简单的WebService程序 便于新手操作

    WebService接口开发实战总结

    ### WebService接口开发实战总结及调试 #### 一、WebService简介与应用场景 WebService是一种通过HTTP协议访问的标准网络服务,能够实现不同系统之间的交互。它基于XML标准,支持多种传输协议,如SOAP(简单对象...

    实战Web+Service+with+CXF webservice快速入门

    实战Web+Service+with+CXF webservice快速入门 webservice快速入门

    c#-操作webservice(经典入门教程).zip_webservice

    **C# 操作 WebService 入门教程** 在软件开发中,Web Service是一种基于网络的、松散耦合的服务交互方式。它允许不同系统之间的数据交换,无视平台和语言的差异。C#作为.NET框架的主要编程语言,提供了丰富的工具和...

    浪曦][原创]WebService在.NET中的实战应用二

    - `WebService在NET中的应用(二).ppt` 可能是一个关于WebService实战的PPT教程,详细讲解了如何在.NET中实现和使用WebService。 - `DataSetSurrogate.dll` 可能是一个用于优化DataSet序列化的组件,帮助提高数据传输...

    MyEclipse.6.实战开发讲解视频入门_源代码 8_WebService.zip

    【标题】: "MyEclipse 6.0 WebService实战开发教程源码解析" 这个压缩包文件的内容聚焦于使用MyEclipse 6.0进行Web服务(WebService)的实战开发。MyEclipse是一款强大的集成开发环境(IDE),尤其在Java EE应用...

    浪曦][原创]WebService在.NET中的实战应用五

    【标题】:“浪曦][原创]WebService在.NET中的实战应用五” 这篇教程主要探讨的是如何在.NET环境中实际应用WebService技术,以提升编程实践能力。WebService是一种基于互联网的标准,允许不同平台的应用程序之间...

    WebService实战讲解课程

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

    WebService实例项目

    该项目使用XFire框架,项目中所带的包是使用IDE自动生成的,如果因Myeclipse版本问题可自动添加,本人使用8.6版本的。项目包含客户端和服务端,自己下载运行后测试看看,本身机上使用没有任何问题!

    WebService在.NET中的实战应用一

    WebService在.NET中的实战应用是开发跨平台、跨语言应用程序的重要技术。它基于开放标准,如SOAP(简单对象访问协议)和WSDL(Web服务描述语言),使得不同系统间的数据交换变得简单而有效。本篇文章将深入探讨.NET...

    webservice.zip

    【标题】:Spring Boot 集成WebService实战详解 【正文】: 在现代软件开发中,Web Service作为不同系统间通信的重要桥梁,被广泛应用。Spring Boot以其简洁的配置和强大的功能,成为Java开发者构建微服务的首选...

    webservice远程技术资料.zip

    资源包含两款axis2的eclipse插不是有件。3个教程文档(使用插件和不使用插件发布webservice,webservice实现大数据量传输),Webservice实战代码(人员系统,含数据库脚本)

    WebService模型(三种应用技术标准) WebService在Internet网的实战应用

    **WebService模型概述** WebService是一种基于互联网的、平台和语言无关的通信协议,它允许不同系统间的应用程序通过网络进行互操作。在三种主要的应用技术标准中,主要包括SOAP(Simple Object Access Protocol)...

    WebService在·NET中的实战应用三

    【WebService在.NET中的实战应用三】 在.NET框架中,WebService是一种基于XML的互联网通信协议,它允许不同平台、不同语言的应用程序之间进行数据交换。本篇主要探讨的是WebService在.NET环境下的实际应用,特别是...

    java-webservice入门实战.doc

    Java WebService 入门实战主要涉及使用 Axis2 框架开发和部署 WebService 的基本步骤。Axis2 是Apache组织开发的一个Web服务引擎,它提供了更高效、更灵活的架构,支持SOAP 1.1和1.2协议,同时集成RESTful ...

    浪曦][原创]WebService在.NET中的实战应用四

    【标题】"浪曦][原创]WebService在.NET中的实战应用四"主要聚焦于.NET平台下使用WebService进行实际项目开发的技巧和实践经验。WebService是一种基于HTTP协议的,能够跨平台、跨语言交换数据的服务,它利用XML...

    [浪曦][原创]WebService在.NET中的实战应用三

    【标题】:“[浪曦][原创]WebService在.NET中的实战应用三” 【描述】:本教程深入探讨了WebService在.NET框架下的实际应用,通过具体的案例分析,旨在提升开发者们的编程技能,尤其是对于WebService的运用技巧。 ...

    webservice cxf 开发实战

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

Global site tag (gtag.js) - Google Analytics