三. 部署Web Service Project
Web Service可以部署在任何MyEclipse支持的J2EE应用服务器上,该部分将演示如何在Tomcat 5 Web容器上部署HelloWorld工程.
3.1部署HelloWorld Web Service Project
Figure-10显示了如何部署HelloWorld应用.
1. 从Server Manager中选择Deployer按钮(step-1)
2. 在Server Deployments对话框中选择Add to create a new deployment (step-2)
3. 在New Deployment对话框中选择HelloWorld工程并选择Exploded Archive选项
4. 在New Deployment对话框选择Finish来将HelloWorld在Tomcat 5默认的位置中打包为WAR
5. 选择OK完成部署
Figure-10: Three-step deployment process
新HelloWorld WAR部署将出现在Server Manager视图中Tomcat 5节点下.
Figure-11: Servers Manager View depicting deployed HelloWorld web service project
四. 启动Tomcat服务器
五. 使用Web Service Explorer测试Web Service
MyEclipse提供了一个Web Service Explorer来测试Web Service.
1. 在MyEclipse perspective中选择toolbar button来执行Web Service Explorer
Figure-15: Web Services Explorer launch button on workbench toolbar
2. 选择WSDL模式(Figure-16)
3. 在活动面板中键入HelloWorldService WSDL文档的URLhttp://localhost:8080/HelloWorld/services/HelloWorldService?WSDL,Web Service Explorer将下载自动产生的WSDL文档,该WSDL文档由XFire framework,并产生一系列的操作能够调用service.
4. 在活动面板中选择example操作并在in0域中键入HelloWorld
5. 选择Go按钮来调用在HelloWorldService上的example操作,结果出现在Status面板上
Figure-16: Web Services Explorer testing HelloWorldService
六. 创建Java Test客户端
XFire提供了一个动态的代理框架,能够读取WSDL文档和创建潜在的消息服务使Java类来执行在Web Service的行为.该部分将为HelloWorld Web Service写一个Java Web Service客户端
6.1增加XFire类库配置
为了使example client能够在HelloWorld工程中运行,需要增加XFire HTTP Client类库到工程的构建路径中.
1. 在Package Explore视图中右击HelloWorld工程选择Build Path>Add Library
2. 选择MyEclipse Libraries
3. 选择XFire HTTP Client Libraries
Figure-17: Choosing the XFire HTTP Client Libraries
4. 选择Finish
6.2创建HelloWorldClient类
执行Java类向导来创建HelloWorldClient类
Figure-18: HelloWorldClient defined in New Java Class Wizard.
代码如下:
package org.stephencat.ws;
import org.codehaus.xfire.*;
import org.codehaus.xfire.service.*;
import org.codehaus.xfire.service.binding.*;
import org.codehaus.xfire.client.*;
import java.net.*;
public class SampleClient
{
/*** @param args*/
public static void main(String[] args)
{
Service srvcModel = newObjectServiceFactory().create(IHelloWorldService.class);
XFireProxyFactory factory =new XFireProxyFactory(XFireFactory.newInstance().getXFire());
String helloWorldURL ="http://localhost:8080/HelloWorld/services/HelloWorldService";
try{
IHelloWorldService srvc = (IHelloWorldService)factory.create(srvcModel, helloWorldURL);
String result = srvc.example("hello world");System.out.print(result);
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
}
}
Web Service可以部署在任何MyEclipse支持的J2EE应用服务器上,该部分将演示如何在Tomcat 5 Web容器上部署HelloWorld工程.
3.1部署HelloWorld Web Service Project
Figure-10显示了如何部署HelloWorld应用.
1. 从Server Manager中选择Deployer按钮(step-1)
2. 在Server Deployments对话框中选择Add to create a new deployment (step-2)
3. 在New Deployment对话框中选择HelloWorld工程并选择Exploded Archive选项
4. 在New Deployment对话框选择Finish来将HelloWorld在Tomcat 5默认的位置中打包为WAR
5. 选择OK完成部署
Figure-10: Three-step deployment process
新HelloWorld WAR部署将出现在Server Manager视图中Tomcat 5节点下.
Figure-11: Servers Manager View depicting deployed HelloWorld web service project
四. 启动Tomcat服务器
五. 使用Web Service Explorer测试Web Service
MyEclipse提供了一个Web Service Explorer来测试Web Service.
1. 在MyEclipse perspective中选择toolbar button来执行Web Service Explorer
Figure-15: Web Services Explorer launch button on workbench toolbar
2. 选择WSDL模式(Figure-16)
3. 在活动面板中键入HelloWorldService WSDL文档的URLhttp://localhost:8080/HelloWorld/services/HelloWorldService?WSDL,Web Service Explorer将下载自动产生的WSDL文档,该WSDL文档由XFire framework,并产生一系列的操作能够调用service.
4. 在活动面板中选择example操作并在in0域中键入HelloWorld
5. 选择Go按钮来调用在HelloWorldService上的example操作,结果出现在Status面板上
Figure-16: Web Services Explorer testing HelloWorldService
六. 创建Java Test客户端
XFire提供了一个动态的代理框架,能够读取WSDL文档和创建潜在的消息服务使Java类来执行在Web Service的行为.该部分将为HelloWorld Web Service写一个Java Web Service客户端
6.1增加XFire类库配置
为了使example client能够在HelloWorld工程中运行,需要增加XFire HTTP Client类库到工程的构建路径中.
1. 在Package Explore视图中右击HelloWorld工程选择Build Path>Add Library
2. 选择MyEclipse Libraries
3. 选择XFire HTTP Client Libraries
Figure-17: Choosing the XFire HTTP Client Libraries
4. 选择Finish
6.2创建HelloWorldClient类
执行Java类向导来创建HelloWorldClient类
Figure-18: HelloWorldClient defined in New Java Class Wizard.
代码如下:
package org.stephencat.ws;
import org.codehaus.xfire.*;
import org.codehaus.xfire.service.*;
import org.codehaus.xfire.service.binding.*;
import org.codehaus.xfire.client.*;
import java.net.*;
public class SampleClient
{
/*** @param args*/
public static void main(String[] args)
{
Service srvcModel = newObjectServiceFactory().create(IHelloWorldService.class);
XFireProxyFactory factory =new XFireProxyFactory(XFireFactory.newInstance().getXFire());
String helloWorldURL ="http://localhost:8080/HelloWorld/services/HelloWorldService";
try{
IHelloWorldService srvc = (IHelloWorldService)factory.create(srvcModel, helloWorldURL);
String result = srvc.example("hello world");System.out.print(result);
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
}
}