深入了解webservice_开发实战篇

服务器端:

第一: 配置环境

创建一个Web Project,将XFire自己的包及其XFire依赖的jar包(6个jar包)全部导入到classpath下,方法是,只需将jar包粘贴在WebRoot->WEB-INF->lib下即可。

第二: 创建一个interface和interface的实现类。使用 Web 服务接口和 Web 服务实现类来完成 POJO 的 Web 服务发布

第三: 修改web.xml文件,将XFireServlet整合到Tomcat服务器中

在<web-app>中加入一下xml,这样就是说来自/servlet/XFireServlet/*和/services/*的所有的请求都交由org.codehaus.xfire.transport.http.XFireConfigurableServlet来截获,并且通过XFire自己的机制来处理[xhtml] view plaincopy

  1. <servlet>  
  2.   <servlet-name>XFireServlet</servlet-name>  
  3.   <servlet-class>  
  4.    org.codehaus.xfire.transport.http.XFireConfigurableServlet  
  5.   </servlet-class>  
  6.  </servlet>  
  7.  <servlet-mapping>  
  8.   <servlet-name>XFireServlet</servlet-name>  
  9.   <url-pattern>/servlet/XFireServlet/*</url-pattern>  
  10. 10.  </servlet-mapping>  
  11. 11.  <servlet-mapping>  
  12. 12.   <servlet-name>XFireServlet</servlet-name>  
  13. 13.   <url-pattern>/services/*</url-pattern>  
  14. 14.  </servlet-mapping>  


第四:向外界暴露服务

在src目录下建立一个文件夹叫做META-INF,再在其下建立一个xfire文件夹,在xfire文件夹中创建一个services.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
 <!-- 向外界暴露的服务的名字 -->
 <name> IWsService</name>
 <!-- 接口类 -->
 <serviceClass> IWsService</serviceClass>
 <!-- 接口实现类 -->
 <implementationClass> WsServiceImpl</implementationClass>
</service></beans>

 

 客户端开发:通过服务端提供的接口类进行调用

第一:将XFire自己的包及其XFire依赖的jar包(6个jar包)全部导入到classpath下

第二:开发客户端

// 参数声明

private static Service service = null;

private static XFireProxyFactory factory = null;

private static IWsService iws = null;

private static String url = "http://192.168.5.163:8081/fmws/services/WsService";

// 根据与服务器端相同的接口创建service

service = new ObjectServiceFactory().create(IWsService.class);

 // 用代理工厂创建接口类型的对象

factory = new XFireProxyFactory(XFireFactory.newInstance().getXFire());

 

//远程调用代理service

iws = (IWsService)factory.create(serviceurl);

 

posted @ 2015-12-02 19:40  loleina  阅读(480)  评论(0编辑  收藏  举报