当前位置: 代码迷 >> Web前端 >> 运用MyEclipse构建Web Service(Xfire框架)
  详细解决方案

运用MyEclipse构建Web Service(Xfire框架)

热度:226   发布时间:2012-11-22 00:16:41.0
使用MyEclipse构建Web Service(Xfire框架)
任务要求:使用Xfire实现一个简单的“Hello WorldWeb Services,作业应当包括相关的实现软件代码以及对应的WSDL

?

环境搭建MyEclipse 6.5XFire 1.2.6Tomcat 5.5

XFire下载地址:http://xfire.codehaus.org/Download,下载时选择Binary Distribution in zip package xfire-distribution-1.2.6.zip),解压缩之后lib文件夹中包含了所有的jar文件。

?

Service创建

1、新建Service项目:FileNewWeb Service Project,项目名称为“HelloWorldService”。在Framework中选择XFire,虽然已经废弃,但是可以导入自己下载的lib文件使用,然后NextNextNextfinish,均默认,则项目创建成功。

?

?

2、导入xfire的外部jar。将xfire解压缩后目录下\xfire-distribution-1.2.6\xfire-1.2.6\lib下所有jar以及\xfire-distribution-1.2.6\xfire-1.2.6下的xfire-all-1.2.6.jar,全部拷贝到项目文件夹\MyEclipse\HelloWorldService\WebRoot\WEB-INF\lib下。

?

3、创建Service类。src下新添一个package,名为“server”;server包下新建一个class,名为“Hello”,添加代码如下。该class实现一个简单的HelloWorld程序,带了一个字符串类型参数,返回一个字符串。

package server;

public class Hello {

??? public String sayHello(String name){

??????? return "Hello World & Hello "+name;?

??? ?? }

}

?

4、创建Service。项目名称右键―NewOtherWeb ServicesWeb Service--Next。

?

?

??? Strategy选择Create web service from java bean--Next

?

??? Service name也取为“HelloWorldService”,实现方式选择java bean implementation class onlyService impl.class则选择刚才创建的server.Hello--Next--finish

?

5、将上面创建的Service部署到tomcat中(如下图),启动tomcat server,在浏览器中输入http://localhost:8080/HelloWorldService/services/HelloWorldService?wsdl ,(分别代表服务器名称:端口号/项目名称/services/服务名称),则可以看到自动生成的wsdl文件。

?

?

?

以上的过程就是把服务器端做好了,接下来就要做客户端了。

?

客户端创建

1、客户端的配制以及调用有两种方法:一种是自动生成一些代码接口,然后直接调用;一种是手写一些方法来进行调用。手写代码之前,一定要把http client library 的包加进来,以及一些相应的xfile的核心包,包有以下几个:XFire 1.2 Core librariesXFire1.2 HTTP Client librariesXFire1.2 JaxB2 libraries。加入了以上的三个包以后,然后可以写一个测试的main方法来进行测试调用服务方法。

2、这里使用自动生成客户端的方法,先导入外部jar。项目右键---Properitiesjava bulid path----Librariesadd External JARs,把Xfirelib包下的jar都导入。

?

3、创建一个新的Client项目:FileNewWeb Service Project,项目名称为“HelloWorldClient”,Framework同样选择Xfire--Next―Nextfinish,注意在配置Library的时候,要勾上XFire 1.2 Core librariesXFire1.2 HTTP Client librariesXFire1.2 JaxB2 libraries这几个包,如下:

?

?

???? ?4、创建一个web service client:项目名称右键―NewOtherWeb ServicesWeb Service Clientnextnext,在WSDL URL下输入刚才http://localhost:8080/HelloWorldService /services/HelloWorldService?wsdl,然后next---finish

??? 5、客户端项目文件夹下自动生成出来了一些有用的接口, 一个方法一个接口, 就可以直接拿来用了。

?

HelloWorldServiceClientmain方法中,调用下service中的SayHello方法:

String greet=service.sayHello("Feng");

System.out.println(greet);

运行结果如下:

?

??? Web Service构建和使用的整个流程大致这样,也比较简单。

?

【参考文献:】

1、http://www.iteye.com/topic/195927

2、http://www.iteye.com/topic/621838

  相关解决方案