webservice 小结之XFire_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > webservice 小结之XFire

webservice 小结之XFire

 2012/3/17 15:26:14  yuur369  程序员俱乐部  我要评论(0)
  • 摘要:不好意思了。。虽然说尽快写好。。。但是最近在找工作。。。所以都不怎么上iteye了。。。今天补上。。其实我说的都是比较基础的东西。。但是很多地方大家可以自己深入了解的。好了。废话不说了。这篇主要是讲下XFire的实例,同样是myeclipse。因为原理都差不多。所以我就只简单介绍下具体怎么做了。。XFire概述XFire是codeHaus组织提供的一个开源框架,它构建了POJO和SOA之间的桥梁,主要特性就是支持将POJO通过非常简单的方式发布成Web服务
  • 标签:Web Service Webservice
不好意思了。。虽然说尽快写好。。。但是最近在找工作。。。所以都不怎么上iteye了。。。今天补上。。其实我说的都是比较基础的东西。。但是很多地方大家可以自己深入了解的。好了。废话不说了。
这篇主要是讲下XFire的实例,同样是myeclipse。因为原理都差不多。所以我就只简单介绍下具体怎么做了。。
XFire 概述
  XFire 是 codeHaus 组织提供的一个开源框架,它构建了 POJO 和 SOA 之间的桥梁,主要特性就是支持将 POJO 通过非常简单的方式发布成 Web 服务,这种处理方式不仅充分发挥了 POJO 的作用,简化了 Java 应用转化为 Web 服务的步骤和过程,也直接降低了 SOA 的实现难度,为企业转向 SOA 架构提供了一种简单可行的方式。
   XFire 目前最新的版本是 1.2.6,目前支持的特性主要包括:
     支持将 Web 服务绑定到 POJO、XMLBeans、JAXB1.1、JAXB2.0 和 Castor;
     支持基于 HTTP、JMS、XMPP 等多种协议访问 Web 服务;
     支持多种 Web 服务业界重要标准如 SOAP、WSDL、Web 服务寻址(WS-  Addressing)、Web 服务安全(WS-Security)等;
     支持 JSR181,可以通过 JDK5 配置 Web 服务;
     高性能的 SOAP 实现;
     服务器端、客户端代码辅助生成;
     对 Spring、Pico、Plexus 等项目的支持等。

Apache CXF
    XFire在2007开发到1.2.6版本的时候,就与另一个开源项目Celtix (由IONA技术公司(现在是Progress的一部分)开发 )合并成为新的项目CXF,合并的工作是由apache领导的。CXF取得就是两个项目的首写字母。所以在XFire的官网上有这么一句话“XFire  is now  CXF”

新建XFire Service

文档结构图:

可以看到Xfire其实也是一个普通的web程序,只不过添加对应的library和文件夹。其中webservices文件存放的是配置文件service.xml,这个文件在tomcat服务器发布的时候会自动转移到WEB-INF\classes\META-INF文件夹下。
新建接口和对应实现类

配置webservice
  点击工具栏的new web services按钮,选择对应项目点击next。


输入webservice名称,选择对应的接口和实现类点击finish
配置完成可看到services.xml内容已经发生改变

如果觉得前面配置webservice的步骤比较麻烦的话其实可以直接在service.xml文件添加上面格式的<service>信息就可以了。
放在tomcat上然后访问项目名称加上service,例如      http://127.0.0.1:8088/XFireService/services
可以看到你的webservice并点击wsdl链接可以看wsdl文件的内容的话就证明服务器端开发成功了。
然后就是客户端
第一步还是建立XFire的webservice project,然后点击右键选择new web service client,选择对应新建的client项目,选择XFire点击next。
输入wsdl地址,选择生成类所要放入的包点击next,如果下一步的WSDL Validation没有错误的话之间点击下一步添加jar包点击finish。


项目结构图:       
   
可以直接在HelloWordClient类中写测试方法:
  public static void main(String[] args){
   HelloWordClient client=new HelloWordClient();
   HelloWordPortType service=client.getHelloWordHttpPort();
   System.out.println(service.hello(null));
   System.out.println(service.hello("yuur"));
   System.out.println(service.add(7,3));
  }

 

写完这一篇,可能暂时就不写了。。。后来可能会和大家讲解一些稍微复杂的应用,例如文件传输和list数据的传输。。                   
  • 大小: 117.5 KB
  • 大小: 10 KB
  • 大小: 47 KB
  • 大小: 116.7 KB
  • 大小: 3.6 KB
  • 大小: 121.8 KB
  • 大小: 14.2 KB
  • 查看图片附件
发表评论
用户名: 匿名