webServiceXfire入门.docx
- 文档编号:3588278
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:15
- 大小:484.27KB
webServiceXfire入门.docx
《webServiceXfire入门.docx》由会员分享,可在线阅读,更多相关《webServiceXfire入门.docx(15页珍藏版)》请在冰点文库上搜索。
webServiceXfire入门
MyEclipse下开发WebService
开发环境
SunJava5+Eclipse3.2+MyEclipse5.0.0.
概述
本文介绍了使用MyEclipseWebService来迅速开发和测试一个HelloWorldWebService,其中包括:
1.介绍了MyEclipseWebServices的基本概念
2.创建一个MyEclipseWebServices工程
3.创建一个简单的HelloWorldWebService
4.在Web容器中,如Tomcat5中部署WebService
5.使用WebServicesExplorer来测试部署的WebServices
XFireJavaSOAP框架概述
MyEclipseWebServices是建立在XFireJavaSOAP框架和工具基础上的,XFire是一款开源的JavaSOAP框架。
它拥有一个轻量级的信息处理模块,通过STAX来与SOAP信息相结合。
提供了一个工作在WebServices下的简单API,支持POJO和schema开发.XFire支持WebServicesstandards,Spring整合,支持JBI,支持JAXB,XMLBeans,Java5和JAX-WS.并支持HTTP,JMS,XMPP,In-memory传输协议.
一.创建WebService工程
在MyEclipse5.0中引入了一个新的工程类型即WebService工程,该工程扩展了MyEclipseWebProject来支持额外的WebService配置,开发和部署.本部分将使用WebServicesProjectwizard来创建和配置一个新的WebServiceProjectsWebServiceWizard将完成下列的动作:
创建MyEclipseJ2EEWebProject
在工程中的web.xml文件中配置XFireServlet
创建XFireservices.xml配置文件
在工程中的构建路径中添加MyEclipse-XFire类库
添加一个指定的MyEclipsewebprojectbuilder到.projects文件,以便部署services.xml文件到它合适的位置.如:
/WEB-INF/classes/META-INF/xfire/
运行WebServiceProjectWizard
该向导包括三个页面,Page-1搜集WebProject配置细节,Page-2搜集XFire配置细节,Page-3在新建的构建路径中配置XFire类库
1.执行WebServicesProjectWizard.
1).选择File>New>Other
2).扩展MyEclipse种类按照J2EE工程的种类
3).选择WebServicesProject然后点击Next,如图所示
Figure-1:
NewProjectWizardLauncher
2.添加ProjectName,点击Next
Figure-2:
Page-2,Collectingwebconfigurationdetails
3.在向导的Page-2中添加XFireservlet和service.xml文件的配置信息,按照默认的值即可.
Figure-3:
XFireservletandservices.xmlconfiguration
4.在向导的Page-3中选择类库添加到工程的构建路径中,其中XFireCoreLibrary是需要的,如果要在工程中开发一个客户端应用,XFireHTTPClientLibraries也是需要的.
Figure-4:
SelectingXFirelibrariestoaddtonewwebserviceprojectbuildpath
5选择Finish完成WebService工程的创建过程
Figure-5,显示了新创建的HelloWorldWebService工程的组织结构,WebService工程和一个标准的MyEclipseWeb工程很相似.XFireWebService配置元素如图红色区域显示:
Figure-5:
Webservicesartifactsofanewwebserviceproject
二.创建WebService-Code-firstStrategy
在这部分将用MyEclipseWebServiceWizard并通过使用Code-firstStrategy来创建一个HelloWorldService示例.
1.执行MyEclipseWebServiceWizard,有两种方法来执行MyEclipseWebServiceWizard
方法1.从MyEclipseperspectivetoolbar中来执行向导
在打开的WebServiceWizard上的workbench上来选择新WebService按钮
方法2.从workbenchmenubar执行向导
1.从workbenchmenubar选择:
File>New>Other>MyEclipse>WebService
Figure-6:
LaunchingWebServiceWizard
2.在Page-1选择HelloWorld工程并选择CreatewebservicefromJavabean
3.选择Next到Page-2
Figure-7:
Page-1ofnewwebservicewizard
4.填写WebService的名字HelloWorldService
5.选择JavaSourcefolder或者选择New按钮来新建一个sourcefolder
6.填写Javapackage或者通过选择Browse按钮来选择一个已经存在的package.也可以选择New按钮来新建一个Javapackage
注意:
对Service接口和Service执行的类的默认值是基于所填入WebService名字来产生的.
7.选择Next来初始化WebService的创建过程
Figure-8:
Page-2ofnewwebservicewizard.
该向导产生了IHelloWorldServiceJava接口和HelloWorldServiceImplJava类.并且在services.xml配置文件中创建了一个实体(如图所示),注意到example(Stringmessage)方法在接口类中产生,当WebService部署后作为一个测试操作.
Figure-9:
NewlycreatedHelloWorldinterfaceandimplementationclass
三.部署WebServiceProject
WebService可以部署在任何MyEclipse支持的J2EE应用服务器上,该部分将演示如何在Tomcat5Web容器上部署HelloWorld工程.
3.1部署HelloWorldWebServiceProject
Figure-10显示了如何部署HelloWorld应用.
1.从ServerManager中选择Deployer按钮(step-1)
2.在ServerDeployments对话框中选择Addtocreateanewdeployment(step-2)
3.在NewDeployment对话框中选择HelloWorld工程并选择ExplodedArchive选项
4.在NewDeployment对话框选择Finish来将HelloWorld在Tomcat5默认的位置中打包为WAR
5.选择OK完成部署
Figure-10:
Three-stepdeploymentprocess
新HelloWorldWAR部署将出现在ServerManager视图中Tomcat5节点下.
Figure-11:
ServersManagerViewdepictingdeployedHelloWorldwebserviceproject
四.启动Tomcat服务器
五.使用WebServiceExplorer测试WebService
MyEclipse提供了一个WebServiceExplorer来测试WebService.
1.在MyEclipseperspective中选择toolbarbutton来执行WebServiceExplorer
Figure-15:
WebServicesExplorerlaunchbuttononworkbenchtoolbar
2.选择WSDL模式(Figure-16)
3.在活动面板中键入HelloWorldServiceWSDL文档的URLhttp:
//localhost:
8080/HelloWorld/services/HelloWorldService?
WSDL,WebServiceExplorer将下载自动产生的WSDL文档,该WSDL文档由XFireframework,并产生一系列的操作能够调用service.
4.在活动面板中选择example操作并在in0域中键入HelloWorld
5.选择Go按钮来调用在HelloWorldService上的example操作,,结果出现在Status面板上
Figure-16:
WebServicesExplorertestingHelloWorldService
六.创建JavaTest客户端
XFire提供了一个动态的代理框架,能够读取WSDL文档和创建潜在的消息服务使Java类来执行在WebService的行为.该部分将为HelloWorldWebService写一个JavaWebService客户端
6.1增加XFire类库配置
为了使exampleclient能够在HelloWorld工程中运行,需要增加XFireHTTPClient类库到工程的构建路径中.
1.在PackageExplore视图中右击HelloWorld工程选择BuildPath>AddLibrary
2.选择MyEclipseLibraries
3.选择XFireHTTPClientLibraries
Figure-17:
ChoosingtheXFireHTTPClientLibraries
4.选择Finish
6.2创建HelloWorldClient类
执行Java类向导来创建HelloWorldClient类
Figure-18:
HelloWorldClientdefinedinNewJavaClassWizard.
代码如下:
publicstaticvoidmain(String[]args)...{
ServicesrvcModel=new
ObjectServiceFactory().create(IHelloWorldService.class);
XFireProxyFactoryfactory=
newXFireProxyFactory(XFireFactory.newInstance().getXFire());
StringhelloWorldURL=
"http:
//localhost:
8080/HelloWorld/services/HelloWorldService";
try...{
IHelloWorldServicesrvc=(IHelloWorldService)factory.create(srvcModel,helloWorldURL);
Stringresult=srvc.example("helloworld");
System.out.print(result);
}catch(MalformedURLExceptione)...{
e.printStackTrace();
}
}
该段代码定义了创建一个XFirewebserviceproxy的过程,该代理支持POJOIHelloWorldService接口
右键点击RunAs>JavaApplication或者DebugAs>JavaApplication来运行或调试该程序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- webServiceXfire 入门