![Mi_Fire服务部署手册.doc_第1页](http://file1.renrendoc.com/fileroot_temp2/2020-3/4/dacddab9-68d4-44e2-a596-820b5678f864/dacddab9-68d4-44e2-a596-820b5678f8641.gif)
![Mi_Fire服务部署手册.doc_第2页](http://file1.renrendoc.com/fileroot_temp2/2020-3/4/dacddab9-68d4-44e2-a596-820b5678f864/dacddab9-68d4-44e2-a596-820b5678f8642.gif)
![Mi_Fire服务部署手册.doc_第3页](http://file1.renrendoc.com/fileroot_temp2/2020-3/4/dacddab9-68d4-44e2-a596-820b5678f864/dacddab9-68d4-44e2-a596-820b5678f8643.gif)
![Mi_Fire服务部署手册.doc_第4页](http://file1.renrendoc.com/fileroot_temp2/2020-3/4/dacddab9-68d4-44e2-a596-820b5678f864/dacddab9-68d4-44e2-a596-820b5678f8644.gif)
![Mi_Fire服务部署手册.doc_第5页](http://file1.renrendoc.com/fileroot_temp2/2020-3/4/dacddab9-68d4-44e2-a596-820b5678f864/dacddab9-68d4-44e2-a596-820b5678f8645.gif)
已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
XFire服务部署手册J2EE及框架 2008-05-15 11:36 阅读22评论0 字号: 大大 中中 小小 一、准备工作:工程目录结构 工程的目录结构如下图所示:ldaxfire是工程的根目录。/WEB-INF/classes/META-INF/xfire目录用于存放service.xml文件。将下的包(用到的)copy到/WEB-INF/lib目录下。 XFireServlet XFire Servlet org.codehaus.xfire.transport.http.XFireConfigurableServlet XFireServlet /services/* 这样在工程中发布的所有服务都可以在工程URL的services子目录下访问。三、类结构调整 XFire对于要发布的服务没有多余的要求,它可以自动的将指定服务类的公共方法发布出去。但是POJOs的调用要求传入的参数类型必须是接口;同时由于XFire生成的桩使用了不支持的JSR181注释类型,所以在这里最好是遵从POJOs的要求,为每一个要发布的服务类生成一个接口,以便于低版本的客户端使用POJOs方式进行访问。四、类型影射 XFire支持的数据类型包括基础类型、数组、集合、字符串、Date(java.util.Date、java.util.Calendar、java.sql.Timestamp、java.sql.Date、java.sql.Time)、XML类型(Document、Element、XMLStreamReader、Source)及以上类型组成的复合类型。基础类型、数组、String、Date类型不用进行类型影射,除此之外的数据类型如List、Map等集合对象或是其它的复合类型,必须要写对应的类型影射。XFire的类型影射在ServiceClassName.aegis.xml(ServiceClassName为服务类/接口的名字)文件中声明。在这里尽量要求发布服务的参数和返回值不要超出基础类型、数组、String的泛围,因此类型影射在此不作详细说明。在XFire工程中service.xml必须位于/WEB-INF/classes/META-INF/xfire/目录下。其基本格式如下 document|rpc|message|wrapped literal|encoded request|session|application true|false 1、name:必须的。ServiceRegisty就是通过这个名字进行服务注册的,服务部署完成后也是用它来调用服务。3、serviceClass:必须的。要部署到服务中的类,可以是接口。4、implementationClass:可选的。服务被调用时使用的实现类。如果serviceClass的值是一个接口,那么这个值就必须配置,且必须为serviceClass指定接口的实现类。5、serviceFactory:可选的。ServiceFactory控制服务创建和配置。6、bindingProvider:设置bindingProvider,提供绑定相关的信息。如端口等。7、style:可选的。参数样式。默认值为wrapped。可取值为wrapped、message、document 及rpc。8、use:可选的。指定编码类型。取值可以是encoding或litaral,目前的XFire支持literal格式,即无编码。9、scope:可选的。指定服务的生存周期。默认值为application,即在所以访问期间只创建一个服务,不用时可以会被持久化。可以是application、session或request。invoker:可选的。设置调用转接器。如果当服务实现类不是一个无格式java bean时invoker可以指定其调用方式。excutor:可选值。可以为服务指定一个默认值以外的执行策略。handlers:可以使用inHandlers、outHandlers或faulterHandlers为服务指定输入、输出和出错时的调用的处理。每个handler自身是一个XML解析的处理句柄。createDefaultBinding:可选。默认为true,即创建默认的SOAP1.1 HTTP绑定。如果不想创建默认的绑定,可将其值设为false。绑定配置:每一个绑定都要指定的一个transport ID。下面是对应的Transport与ID的对应表。使用endpoint选项可以覆盖掉默认的端口地址。JMS urn:xfire:transport:jms Local urn:xfire:transport:local ServiceName com.yourcompany.yourpath.ServiceInterface com.yourcompany.yourpath.ServiceImplClass 用自己实际的路径和类名取代上面的配置就是一个典型的XFire service配置。六、客户端调用 客户端调用采用POJOs方式。在这种方式下要用到在服务端定义的服务接口。具体代码如下: Service serviceModel = new ObjectServiceFactory().create( XFireProxyFactory serviceFactory = new XFireProxyFactory(); ServiceInterface service = (ServiceInterface) serviceFactory.create( serviceModel, serviceURL); Client client = Client.getInstance(service); client.setProperty(CommonsHttpMessageSender.HTTP_TIMEOUT, 0); data = service.serviceMethod();注:其中的ServiceInterface在实际工程中要以实际的接口类型替代,serviceMethod以具体的方法名替代。在XFire1.2以后支持SOAP消息的GZip压缩传输,在合适的地方启动GZip压缩可以减少网络传输的数据量,加快速度。在XFire中启动GZip压缩要用到一个开源的Filter:PJL Compressing Filter。这个Filter的最新版本是1.6.4,自1.5.0开始该工程开始构建于JDK5.0,因此在JDK1.4环境下只能使用1.4.6(这个版本会与高版本同步更新)。一、服务端启动GZip:在服务端启动GZip只需将PJL Compressing Filter下的jar包(用到的)导入到web的/WEB-INF/lib目录下。并在web.xml文件中增加如下配置: CompressingFilter debug false statsEnabled true CompressingFilter /* 代码清单7-1:服务端加入GZip时web.xml中增加的配置注:根据web.xml文法定义,这个定义必须位于servlet定义之前。二、客户端启用GZip:客户端启动GZip只要将客户端的GZip的属性设为true却可。代码如下: Service serviceModel = new ObjectServiceFactory().create( XFireProxyFactory serviceFactory = new XFireProxyFactory(); ServiceInterface service = (ServiceInterface) serviceFactory.create( serviceModel, serviceURL); Client client = (XFireProxy) Proxy.getInvocationHandler(service) .getClient();启动response压缩 client.setProperty(CommonsHttpMessageSender. GZIP_RESPONSE_ENABLED, Boolean.TRUE); client.setProperty(CommonsHttpMessageSender. GZIP_RESPONSE_ENABLED,Boolean.TRUE);同时启动response和request压缩 client.setProperty(CommonsHttpMessageSender.GZIP_ENABLED, Boolean.TRUE); client.setProperty(C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 60793-1-20:2001 EN-FR Optical fibres - Part 1-20: Measurement methods and test procedures - Fibre geometry
- 【正版授权】 IEC 60749-33:2004 EN-FR Semiconductor devices - Mechanical and climatic test methods - Part 33: Accelerated moisture resistance - Unbiased autoclave
- 【正版授权】 IEC 60748-2-9:1994 EN-FR Semiconductor devices - Integrated circuits - Part 2: Digital integrated circuits - Section 9: Blank detail specification for MOS ultraviolet light erasable e
- 【正版授权】 IEC 60745-2-19:2005 EN-FR Hand-held motor-operated electric tools - Safety - Part 2-19: Particular requirements for jointers
- 【正版授权】 IEC 60684-3-116:2024 EN-FR Flexible insulating sleeving - Part 3: Specifications for individual types of sleeving - Sheets 116 and 117: Extruded polychloroprene,general purpose
- 【正版授权】 IEC 60669-2-4:2004 EN-FR Switches for household and similar fixed electrical installations - Part 2-4: Particular requirements - Isolating switches
- 【正版授权】 IEC 60664-3:2003+AMD1:2010 CSV EN-FR Insulation coordination for equipment within low-voltage systems - Part 3: Use of coating,potting or moulding for protection against pollution
- 【正版授权】 IEC 60630:2005 CSV EN-FR Maximum lamp outlines for incandescent lamps
- 【正版授权】 IEC 60598-2-7:1982/AMD1:1987 EN-FR Amendment 1 - Luminaires. Part 2: Particular requirements. Section Seven: Portable luminaires for garden use
- 【正版授权】 IEC 60587:2007 EN-FR Electrical insulating materials used under severe ambient conditions - Test methods for evaluating resistance to tracking and erosion
- 2024年江苏南京市民政局所属事业单位招聘卫技人员55人历年高频考题难、易错点模拟试题(共500题)附带答案详解
- 2024年小米产业链相关项目创业计划书
- 江苏省连云港市灌云县2022-2023年六年级下学期期末数学试卷
- 电动汽车充电服务协议书
- 2022-2023学年四川省成都市锦江区三年级下期末数学试卷及答案
- 《宠物饲养》课程标准
- 合作办刊协议
- 企业是否应该承担社会责任
- 市政工程质量常见问题专项治理技术方案
- 跨文化商务交际导论 课件 Unit 1 Culture
- 人力资源招聘与培训管理
评论
0/150
提交评论