您的位置:首页 > 编程语言 > Java开发

XFire+MyEclipse 开发WebService入门实例之HelloWorld

2011-11-07 14:27 621 查看
http://blog.csdn.net/feixueqianer/article/details/5850530



由于MyEclipse中已经集成了XFire框架,所以在MyEclipse下用XFire开发webservice十分方便快捷!



下面我们就举一个最简单常见的例子作为入门,也就是经典的helloworld!



第一步,新建工程,引入jar包



打开MyEclipse,新建一个web service project,命名为XFire_HelloWorld






下一步,出现如下窗口




下一步,选择XFire的jar包






core是核心包,必选,HTTP Client 是开发客户端的时候用到的包。如果你需要开发一个客户端来调用你的service,那么就选上这个包。
finish!第一步完成,这时候看一下左边package explorer中,相应的xfire的jar包已经引入,web.xml中已经自动配置好了XFireServlet。

第二步,编写web service类
这一步,其实也可以不用手写代码,直接在file->new->other->WebService中新建一个web service,如下图




下一步





下一步,输入你要编写的服务的名称,也就是服务的接口和实现类的名称





下一步,输入你想要创建的web服务的名称,myeclipse会替你自动生成你要创建的服务的接口和实现类的名称,当然你也可以手动修改。






finish!这时候,在项目导航中,你就可以在src源码中看到myeclipse替你生成的service的接口和实现类。你可以手动编写它们。这里我们暂不作修改。
而在webservices目录下的services.xml中,myeclipse已经自动将你创建的名为“HelloWorld”的webservice配置好了。

第三步,编写client端测试调用webservice

下面是一个简单的客户端代码


view plaincopy
to clipboardprint?

package demo.jws.service.client;
import org.codehaus.xfire.*;
import org.codehaus.xfire.service.*;
import org.codehaus.xfire.service.binding.*;
import org.codehaus.xfire.client.*;

import demo.jws.service.IHelloWorld;

import java.net.*;

public class HelloWorldClient {

public static void main(String[] args) {
Service service = new ObjectServiceFactory().create(IHelloWorld.class);
XFireProxyFactory factory = new XFireProxyFactory(XFireFactory.newInstance().getXFire());
String url = "http://localhost:8080/XFrie_HelloWorld/services/HelloWorld";
try {
IHelloWorld helloWorld = (IHelloWorld)factory.create(service, url);
String result = helloWorld.example("hello world!");
System.out.print(result);
} catch (MalformedURLException e){
e.printStackTrace();
}

}

}

package demo.jws.service.client;
import org.codehaus.xfire.*;
import org.codehaus.xfire.service.*;
import org.codehaus.xfire.service.binding.*;
import org.codehaus.xfire.client.*;

import demo.jws.service.IHelloWorld;

import java.net.*;

public class HelloWorldClient {

public static void main(String[] args) {
Service service = new ObjectServiceFactory().create(IHelloWorld.class);
XFireProxyFactory factory = new XFireProxyFactory(XFireFactory.newInstance().getXFire());
String url = "http://localhost:8080/XFrie_HelloWorld/services/HelloWorld";
try {
IHelloWorld helloWorld = (IHelloWorld)factory.create(service, url);
String result = helloWorld.example("hello world!");
System.out.print(result);
} catch (MalformedURLException e){
e.printStackTrace();
}

}

}


第四步,部署

将项目部署到tomcat上面,运行http://localhost:8080/XFire_HelloWorld/services/
可以看到我们创建好的一个名为hellowold的service,如下图




点击wsdl可以查看服务的wsdl描述文件。

启动tomcat。

在HelloWorldClient上右键点击“Run As->java application”,控制台输出“hello world!”。

至此,客户端已经成功调用了webservice。


例子很简单,确花费了好长时间才搞明白,主要是没有理清里面的逻辑。接下来要继续努力!加油!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: