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

MyEclipse创建Web Service Project实例

2013-02-28 17:12 260 查看
由MyEclipse搭建一个Web Service Project实例是非常容易的,在于知道和不知道而已,完全没有技术可言。

一个Web Service Project的主要任务,就是让几个不同的组件之间能够互相操作,而这一技术的实现,又依赖于HTTP 和 SOAP协议。SOAP,Simple Object Access Protocol,简单对象访问协议。

下面介绍一种比较流行的框架--XFire,在MyEclipse的搭建。

一、环境配置 MyEclipse8.5 && JDK1.6

二、new ==>Web Service Project

1)FrameWork选择XFire



2)Next,默认;

3)Library选择,XFire 1.2 Core Libraries;



4)Finish,文件结构如下:



5)从web.xml对比普通的web项目,我们可以看到很熟悉的东西,url-pattern,看到这几个配置,心理淡定了不少。



三、用MyEclipse为Web Service Project生成对外的接口:new ==> other ==>myelcipse ==> Web Services ==> Web service

1)Strategy是java class



2)Web Service Name:



3)finish

4)修改HelloServiceImpl.java以供测试

[java] view
plaincopy

public class HelloServiceImpl implements IHelloService {

public String example(String message) {

return sayHello(message);

}

private String sayHello(String name){

return "Hello," +name;

}

}

四、部署WebService

1)像部署普通web一样,部署到tomcat上去。

2)测试WebService,



3)打开Web Service Explorer之后,点击右上角一个WSDL Page的图标,Navigator里面的内容会变成WSDL Main,点击它,在右边的WSDL URL里面敲入:

http://localhost:8080/MyWebService/services/HelloService?WSDL

端口是对应的tomcat的端口,和你的webService的名称。开发过j2EE的朋友应该很容易理解,为什么要这样写地址,看一下生成的services.xml就知道了。



可以看到,现在对外的接口只有example一个。

通过浏览器访问URL,可以看到更加直观的wsdl:



五、写个Client尝试调用一下:

1)创建一个普通的java Project: new ==> java project

2)为新的project添加library。点击项目,鼠标右键,选择properties,选择左边的java build path,再点击右边的add library按钮,选择MyEclipse libraries,找到这两个文件:



3)新建一个类,调用example:

[java] view
plaincopy

import java.net.MalformedURLException;

import java.net.URL;

import org.codehaus.xfire.client.Client;

public class HelloInvoke {

/**

* @param args

* @throws Exception

* @throws MalformedURLException

*/

public static void main(String[] args) throws Exception {

Client client = new Client(

new URL("http://localhost:8080/MyWebService/services/HelloService?WSDL")

);

//利用java的反射机制可以远程地得到已经在wsdl中声明的对象

Object[] results = client.invoke("example", new Object[]{"jacob.Ye"});

System.out.println("results[0] " + results[0]);

}

}

运行:

output:

/*

Hello,jacob.Ye

*/

一个简单的WebService就算是调用完毕。

附加webservice解释说明
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: