使用MyEclipse9.0开发Web Service

时间:2023-01-05 15:53:28

之前使用的都是MyEclipse6.0在做WEB服务,里面使用的是XFIRE框架搭建服务平台,后来因为XFIRE更名之后不再更新,导致在最新MyEclipse9.0中使用的是JAX搭建服务。

此文档就是教如何快速的使用9.0开发WEB服务。

       步骤一:创建Web Service Project

使用MyEclipse9.0开发Web Service

    这里我们使用的框架是JAX-WS。他是目前比较流行和成熟的服务框架。注意,这里虽然我们选择了JAX-WS框架,但是最让人气愤的是MyEclipse9.0跟本不会导入这个JAR包……汗,JDK里又不自带,只有自己导了,否则后面在运行服务时会报类找不到的错误。使用MyEclipse9.0开发Web Service

在选中Java构建路径

使用MyEclipse9.0开发Web Service

右侧的菜单中选择“Add Library”

使用MyEclipse9.0开发Web Service
选择自带的JAR包,下一步

使用MyEclipse9.0开发Web Service

纳闷,都整合了怎么就不导进来呢……也忒懒了吧。

选中JAX-WS两个包。就导入成功了!

 

    步骤二:在工程里创建包和业务类

使用MyEclipse9.0开发Web Service

    步骤三:创建SERVICE

使用MyEclipse9.0开发Web Service

        注意工程的选择,框架选择还是JAX-WS,下面的创建模式是选择从JAVA类中创建,因为我们已经写好了自己的业务类。

使用MyEclipse9.0开发Web Service

        选择当前服务的实现类,SOAP使用文档/包装类型,最后一部分是设置是否在工程里生成WSDL文件,可以不选。

 

        步骤四:启动服务并测试

       这里省略发布并启动服务器的步骤……

       如何知道我们自己服务的对应的路径是什么呢?如图找到对应的sun-jaxws.xml文件?

使用MyEclipse9.0开发Web Service

        在创建服务的时候会自动生成一个业务类的代理类。

        而请求服务的路径和对应的业务都记录在该XML文件中。

使用MyEclipse9.0开发Web Service
输入正确的地址后,就看见了此页面,呵呵,右面的链接很熟悉吧,呵呵,点进去看看。

使用MyEclipse9.0开发Web Service

这就是我们成功发布的服务地址。使用MyEclipse9.0开发Web Service

点击右侧的web service 浏览窗口。

 

使用MyEclipse9.0开发Web Service

将出现这个窗体,如果第一次运行的时候可能不是WSDL视图。点击右上角的图标切换到WSDL视图,输入我们的地址就可以测试输入了。^______^

恭喜我们成功发布了属于自己的服务!

 

        步骤五:写客户端调用服务

我们可以创建一个Java工程来测试我们的服务。

使用MyEclipse9.0开发Web Service

在我们的工程中创建客户端。

使用MyEclipse9.0开发Web Service
URL中粘贴我们已发布好的WEB SERVICE地址,并且选择对应类所在的包。就可以点下一步。

使用MyEclipse9.0开发Web Service

如果检测无误,这里就是空白的,否则会有错误信息!

当创建成功之后,观察我们的项目。

使用MyEclipse9.0开发Web Service

    在报下面会生成多个类,个数是根据你的业务类的方法的多少而变化的。具体作用可以查看文档。这里不再细讲!

    创建一个测试类,当中包含主方法。

使用MyEclipse9.0开发Web Service

执行该JAVA程序,输出结果。


使用MyEclipse9.0开发Web Service成功访问服务!^_____,^

 

==================以上为访问自己的服务==================

下面我们将访问一个网络上由.NET发布的服务。因为服务是基于XML通信的原理,是跨平台的,这也是它强大的原因。

http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

以这个手机号码查询的服务为例。

还在之前的Java工程中创建该服务客户端。

使用MyEclipse9.0开发Web Service

点击下一步校验

使用MyEclipse9.0开发Web Service

是警告,忽略它。点击完成。

使用MyEclipse9.0开发Web Service

生成代码时,忽略这个警告,提示我们使用了一个非标准的协议。

我们对比一下自己的服务和网络服务所产生的客户端的不同。

使用MyEclipse9.0开发Web Service

Test包为自己所写服务的客户端,testNet包下为网络服务的客户端。

使用MyEclipse9.0开发Web Service

仔细观察发现,WS.JAVA类继承自Service说明这个类是我们要找的服务类。

使用MyEclipse9.0开发Web Service使用MyEclipse9.0开发Web Service成功!