在Myeclipse8.5下开发Web service程序,目前系统支持的开发框架有3个,JAX-WS,REST(JAX-RS),XFire。其中系统建议不要使用XFire 的框架,可能是要被淘汰了(deprecated)。我们选择的是JAX-WS框架。这个需要Java EE 5.0的支持。所以后面选择Web server容器的时候,是要能支持Java EE 5.0的才可以部署成功

一、Web service服务端开发

1、新建一个Web service project

菜单File -> New -> Web Service Project,在上面的框中输入项目名myWebSvc,框架选择 JAX-WS, J2EE只能选择Java EE 5.0。Finish完成项目新建。

2、新建一个 Java Bean

就是一个普通的Class, File –> New -> Class, 包名输入 com.myweb.ws, 类名输入 SayHello, Finish 结束新建类。在类中加入一个方法sayHaha如下:

package com.myweb.ws;

public class SayHello

{

public String sayHaha(String request)

{

return "Haha, " + request + ", O.K. !";

}

}

3、新建一个Web service

菜单File –> New -> Other -> MyEclipse -> Web Services -> Web Service, Next 进入下一步,选择 Create web  service from java class(Bottom-up scenario),Next进入下一步, Java class 输入 com.myweb.ws.SayHello, 选中 Generate WSDL in project 选项, 
Finish 结束新建。

生成新的服务代理类, com.myweb.ws.SayHelloDelegation ,生成WSDL定义文件,WebRoot\WEB-INF\wsdl\SayHelloService.wsdl ,WebRoot\WEB-INF\wsdl\SayHelloService_Schema1.xsd。

二、部署Web service 服务

1、部署项目

在服务上右键,选择Add Deployment 部署项目。

2、重启服务

在浏览器输入
http://localhost:7001/myWebSvc/SayHelloPort,如果显示正确,则服务发布成功。

3、如果在Weblogic上部署

在创建Web
service 项目的过程中,如果加入了 JAX-WS 2.1 Runtime / API 库,在部署Web
service时,会报错误。

错误: com.sun.xml.ws.policy.jaxws.BuilderHandler]  getPolicySubjects只要删去JAX-WS这两个包 ,再重新部署就可以了。

4.、如果在Tomcat
6.0上部署

则需要加上JAX-WS
API /  Runtime 两个库,否则会报错。

错误:Error
configuring application listener of class
com.sun.xml.ws.transport.http.servlet.WSServletContextListener

三、Web
service 客户端开发

1、新建 Java
project

File
-> New -> Java Project, 输入项目名 UseWS, Finish 结束新建。

2、新建Web
service client程序

File
–> New -> Other -> MyEclipse -> Web Services -> Web Service
Client, Next 进入下一步。

WSDL File
为Web Service 的WSDL文件 E:\workspace\myWebSvc\WebRoot\WEB-INF\wsdl\SayHelloService.wsdl,

或者WSDL URL 为Web Service 的WSDL文件的发布路径

http://localhost:8080/webServices_JAXWS/SayHelloPort?wsdl

Next进入下一步,Finish 结束新建。

四、测试

新建一个测试类,用来调用 SayHelloService,  File -> New -> Class, Finish 结束类的新建。

修改类如下:

SayHelloService sayHelloSvc = new
SayHelloService();

SayHelloDelegate
sayHelloDgt = sayHelloSvc.getSayHelloPort();

String
result = sayHelloDgt.sayHaha("World");

System.out.println(result);

补充:

1、运行项目,发现一个错误,错误显示是Connection
refused,
查看了SayHelloService.wsdl文件,发现这里的配置文件中,
标签service 的soap:address location 的端口是8080,
而Weblogic中我们用的默认端口是7001,于是修改端口号为7001,

2、另外,如果不在同一台机器上测试, 这里的localhost应该改为相应的IP地址。修改后测试,显示成功。Haha,
World, O.K. !。

MyEclipse JAX-WS Web Service的更多相关文章

  1. 用MyEclipse开发REST Web Service

    MyEclipse 在线订购年终抄底促销!火爆开抢>> MyEclipse最新版下载 使用MyEclipse开发RESTWeb服务来放大您的Web应用程序.在本教程示例中,您将创建一个简单 ...

  2. MyEclipse 10 之下Web Service 的创建和实现

    (一)Web service服务端开发 1. 新建一个Web service project, 菜单New -> Web Service Project, 2. 新建一个 Java Bean, ...

  3. [转载] Web Service工作原理及实例

    一.Web Service基本概念   Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求, ...

  4. MyEclipse XFire Web Service

    我们在做系统集成时,经常会需要调用webservice接口,本文将讲解在myeclipse中建立一个webservice项目,编写接口和实现类, 并且发布webservice,最后在myeclipse ...

  5. MyEclipse构建Web Service(Xfire框架)

    以下是本人原创,如若转载和使用请注明转载地址.本博客信息切勿用于商业,可以个人使用,若喜欢我的博客,请关注我,谢谢!博客地址 任务要求: 使用Xfire实现一个简单的CalculatorWebServ ...

  6. Spring 4 集成Apache CXF开发JAX-RS Web Service

    什么是JAX-RS 在JSR-311规范中定义,即Java API for RESTful Web Services,一套Java API,用于开发 RESTful风格的Webservice. 工程概 ...

  7. 【转】基于CXF Java 搭建Web Service (Restful Web Service与基于SOAP的Web Service混合方案)

    转载:http://www.cnblogs.com/windwithlife/archive/2013/03/03/2942157.html 一,选择一个合适的,Web开发环境: 我选择的是Eclip ...

  8. C# 开发XML Web Service与Java开发WebService

    一.web service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量 ...

  9. 使用XFire+Spring构建Web Service(一)——helloWorld篇

    转自:http://www.blogjava.net/amigoxie/archive/2007/09/26/148207.html原文出处:http://tech.it168.com/j/2007- ...

随机推荐

  1. JavaScript拼图游戏

    今天是2016年最后一天上班了.最近几天都比较休闲,有时间空闲下来写写文档之类的. 2016过得真是快.感觉没做什么就过去了.想到之前想坚持每个月写一写博客都没坚持到.希望2017年可以吧. 无聊之余 ...

  2. CentOS7.1下JDK+Tomcat应用环境搭建

    最近由于项目的原因,需要测试Linux环境下的应用部署情况.选用了CentOS7.1版本+JDK1.6版本+Tomcat7.0版本进行搭建.其间各种折磨就不说了,随手把相关的注意事项和大概的步骤记录下 ...

  3. 说一说windows原生docker及windows Server Container , Hyper Container 之间的关系(学习总结)

    前一段时间学习netcore的时候解除到了docker,感觉真是不错的技术.百度了不少教程.因为我用windows就下载安装了一下试试.但是没有安装成功,才发现 需要安装virtualbox虚拟机,与 ...

  4. iOS权限问题

    判断相机权限: NSString *mediaType = AVMediaTypeVideo; AVAuthorizationStatus authStatus = [AVCaptureDevice ...

  5. VisualSVN 4.0.12补丁原创发布

    VisualSVN 4.0.12补丁原创发布

  6. java发送http的get、post请求[转]

    原文链接:http://www.cnblogs.com/zhuawang/archive/2012/12/08/2809380.html package wzh.Http; import java.i ...

  7. jquery mobile上传图片完整例子(包含ios图片横向问题处理和C#后台图片压缩)

    上传图片本身是个基本的小功能,但是到了移动端就不那么简单了,相信找到这篇文章的你一定有深深的同感. 本文实例是:在(移动端)页面中点击图片,然后选择文件,然后保存.使用Asp.net 难点一:后台获取 ...

  8. php复习第一章—1.1php 简介

    php语言是构建互联网应用的后端最佳选择 跨平台 性能优越,稳定性强 语法简单,易于上手 丰富完善的技术扩展 LAMP平台成熟稳定,低成本构建 回顾 web 网页本质是一个文本文件,由浏览器解释文件内 ...

  9. SQLBulkCopy使用实例--读取Excel写入数据库/将 Excel 文件转成 DataTable

    MS SQL Server 提供一个称为 bcp 的流行的命令提示符实用工具,用于将数据从一个表移动到另一个表(表可以在不同服务器上). SqlBulkCopy 类允许编写提供类似功能的托管代码解决方 ...

  10. 有关attribute和property,以及各自对select中option的影响

    这个问题老生常谈,但是直到现在我依旧时常会把它搞混.下面列一些各自的特性.   attribute property 设置方法 option.setAttribute('selected', true ...