Web Service 入门Demo

来源:互联网 发布:微博怎么绑定淘宝店铺 编辑:程序博客网 时间:2024/05/07 09:09

Web Service入门Demo

一、Myeclipse Xfire插件的安装

因为本文使用的是Myeclipse6.6+Xfire来开发webservicewebclient .所以讲讲如何安装Xfire插件。

1.  Xfire 插件安装步骤

1.1 Myeclipse 菜单栏:help —— Software Update——Find and Install.         

1.2在弹出对话框中,选中”search for new features to install”,然后点击Next.

1.3点击”New remote Site”,将弹出”New Update Site”窗口,在Name、和URL中分别输入插件名称和更新的网络地址。其中:Name可以自定义,URL输入http://dist.codehaus.org/xfire/update/

输入完毕后,依次点击”OK” , ”Finish”即可。

 

 

二、Myeclipse集成 XFire 搭建Web Service,并构建一个客户端去访问

2.1 建立一个Web Service Project工程:

 2.1.1右击项目列表窗口,”New”——“Web Service Project”

2.1.2输入项目名称,并选择相应的jdk 版本,然后点击”Next”

2.1.3这一步,默认即可,点击”Next” 

2.1.4选中”XFire 1.2 Core Libraries”,一般是默认选中的,所以直接点击”Finish”

2.1.5创建成功后的工程目录如下: 

2.1.6查看WebRoot/WEB-INF/web.xml

        这里指明了当遇到/services/*请求时,将会交由XFireConfigurableServlet来处理。 

 

2.2 创建Web Service服务端

2.2.1选中项目名称,右击”New”——“Other”,在弹出的对话框中选择”MyEclipse”——“Web Services”——“Web service”,然后点击”Next” 

2.2.2在弹出的对话框中选中”Create Web service from Java bean”,并勾选”Create New Java bean”

2.2.3输入服务名,并可以新建或指定类的位置,然后点击”Finish”,创建成功。 

2.2.4在创建成功后,在我们指定或新建的包的目录下会自动生成一个接口类(IMyService1)和一个该接口的实现类(MyService1Impl)。并且在WebServices文件夹下自动生成services.xml,这个xml的含义是:对发布的web 服务接口的描述。

2.2.5 将创建的web Service部署到tomcat中,右击项目”Run As”——“MyEclipse server Application”,在弹出的对话框中选择你要使用的Tomcat,选中点击”OK”后就直接部署启动了。 

2.2.6 启动Tomcat服务器后,在浏览器中输入地址:

http://localhost:8080/MyWebService1/services访问后,列出所有可以得到的服务方法和相应的wsdl。如下图:

点击 [wsdl] 超链接,则可以打开对应的wsdl 文件

 

或者我们也可以直接在浏览器中输入地址:

http://localhost:8080/MyWebService1/services/MyService1?wsdl

(服务器名称:端口号/项目名称/services/服务名称),则可以直接看到自动生成的wsdl文件。

    

至此,我们就把web service的服务器端搭建并启动完毕了,接下来我们创建一个客户端来调用该服务。 

 

2.3创建Web Service客户端

创建Web Service客户端时,我们可以创建Java Project项目或者直接创建一个Java类。这里我们就简单新建个Java类来作为客户端,这个Java类可以在任意的工程中。

2.3.1引入MyEclipse Libraries —— HTTP Client Libraries

选中项目,右击”Properties”,在弹出的对话框中”Java Build Path”——“Libraries”——“Add Library”

在弹出的对话框中,选中”MyEclipse Libraries”,然后点击”Next”

在弹出的对话框中勾选上”XFire 1.2 HTTP Client Libraries”,然后点击”Finish”,完成jar的引入。

2.3.2创建客户端类

    选中项目新建一个Java类:MyClient1.java

客户端类——MyClient.java代码如下: 

package com.client;

import java.net.MalformedURLException;
import java.net.URL;
import org.codehaus.xfire.client.Client;

public class MyClient {
 public static void main(String[] args) throws MalformedURLException,
   Exception {
  Client c = new Client(new URL(
    "
http://localhost:8080/MyWebService1/services/MyService1?wsdl")); // 这个会跟相应的wsdl秒速构想出相应的客户端

  Object[] result = c.invoke("example", new Object[] { "lsxy" });// 这边调用wsdl
  // 描述中的example方法,同时传递参数"lsxy"

  Object[] result2 = c.invoke("sayHello", new Object[] { "dear lsxy" });// 这边调用wsdl
  // 描述中的example方法,同时传递参数"lsxy"

  System.out.println(result[0]);
  System.out.println(result2[0]);
 }
}

 

 

2.3.4测试

先贴出修改后的服务端类:

服务端接口类:MyService1.java

package com.server;
//Generated by MyEclipse

public interface IMyService1 {
 
 public String example(String message);
 
 public String sayHello(String message);
 
}

 

服务端接口类的实现类:MyService1Impl.java 

package com.server;

//Generated by MyEclipse

public class MyService1Impl implements IMyService1 {

 public String example(String message) {
  return message;
 }

 public String sayHello(String name) {
  return "Hello " + name;
 }
}

 

 

在保证服务端正常启动后,右击该客户端类MyClient1.java”Run As”——“Java Application”,控制台输出打印结果:

 

OK , Web Service入门Demo is End !

本来有很多图片的,但可以CSDN上传图片太麻烦了就都是些文件描述,有兴趣的朋友可以去我的资源里面下载“Web Service入门Demo

 

原创粉丝点击