一、环境配置:MyEclipse7.0
JDK1.6
二、创建Web Service Project
1)在MyEclipse中选择File—>New—>Other,选择Web Service Project

2)Project Name:WebServiceServer,Framework:XFire,其他选项默认

3)Next,这一步保持默认值
4)Project Library选择,选择XFire 1.2 Core Libraries

5)Finish,创建成功后看到的工程目录如下:

6)完成以上5步后,查看WebRoot/WEB-INF/web.xml
这里指明了当遇到/services/*请求时,将选用XFireConfigurableServlet来处理

三、创建Web Service Code
1)通过File—>New—>Other—>Web Services—>Web Service wizard创建JAVA CODE

2)选择通过JAVA CLASS创建Web Service

3)创建HelloWebService.java,通过New创建com.service package,向导将为工程自动创建对应的接口类与实现类
创建成功后查看WebServices/services.xml,发现配置文件多了以下内容:

4)修改HelloWebServiceImpl.java
package com.service;
//Generated by meteorWJ
public class HelloWebServiceImpl implements IHelloWebService {
public String example(String message) {
return getAuthor()+","+message;
}
private String getAuthor(){
return "meteorWJ";
}
}
四、部署并测试WebSericeServer
1)部署WebServiceServer

在部署向导中选择项目、服务器

2)启动服务器

3)测试WebService
MyEclipse提供了一个Web Service Explorer来测试Web Service

选择列表中的Launch SOAP Web Services Explorer
4)选择WSDL模式

5)在Explorer中选择WSDL Main,在右边的URL中输入
http://localhost:9090/WebServiceServer/services/HelloWebService?WSDL,单击"Go"
其中9090是服务器端口号,services在之前的web.xml中指定
若在Status中显示成功打开WSDL文件则测试成功

五、创建WebService客户端
经过以上几步,我们已经成功发布了一个WebService,现在需要创建一个客户端来调用该服务
1)创建Java Project:WebServiceClient
2)引入MyEclipse Libraries
右键WebServiceClient—>Build Path—>Add Libraries

选择XFire 1.2 HTTP Client Libraries

3)创建HelloWebService.java
在src目录下创建com.client.HelloWebService.java
package com.client;
import java.net.URL;
import org.codehaus.xfire.client.Client;
public class HelloWebService {
public static void main(String[] args) throws Exception
{
Client client = new Client(new URL("http://localhost:9090/WebServiceServer/services/HelloWebService?wsdl"));
Object[] results = client.invoke("example", new Object[] {"hello"});
System.out.println((String) results[0]);
}
}
4)在确认服务器启动的情况下,运行HelloWebService.java
右键点击Run As>Java Application,在控制台中看到如下输出

本次实例到此就算完成了。
本文介绍如何使用MyEclipse7.0和JDK1.6搭建基于XFire框架的WebService项目,包括创建项目、编写WebService代码和服务端部署测试等步骤,并提供了一个简单的客户端示例。
10万+

被折叠的 条评论
为什么被折叠?



