<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog.html" frameborder="0" width="728" scrolling="no" height="90"></iframe>
(二)JAVA EE 5平台上实现Web服务实例(模拟股票行情机)
JAVA EE 5平台上的JAX-WS
J2EE 1.4平台上实现Web Services的是JAX-RPC, 而到了JAVA EE 5上, 重新命名为JAX-WS.
JAX-RPC与JAX-WS最大的不同是编程模式的差别。 JAVA EE 5采用了JAVA SE 5 的Java语言新特性,在JAX-WS使用了大量的标注(annotation), 因而减少了Web Services的代码量与部署工作,自然也简化了开发。
实现Web服务(模拟股票行情机)
这个例子中采用自低向上的开发方式,即先实现一个模拟的股票行情机,再把这个应用程序发布为Web服务,即最终产生WSDL。
JAVA EE 5 平台上可以最终发布为Web服务的模块有三种, Servlet, EJB以及POJO (plain old Java Object).
下面以POJO为例,来建立模拟的股票报价Web服务
准备及安装软件
-
JAVA SE 5 (JDK 1.5)及以上版本(http://java.sun.com/javase/downloads/index.jsp )
-
NetBeans 5.5.1 (http://zh-cn.netbeans.org/index_zh_CN.html )
-
Sun Application Server 9 (https://glassfish.dev.java.net/): 可以直接下载带Sun Application Server 9的NetBeans 包(http://www.netbeans.info/downloads/index.php )
建立模拟的股票报价Web服务
1。打开NetBeans 5.5.1, 菜单“文件”中选择“新建项目”
2。“新建项目”窗口中,“类别”栏中选择“Web”,“项目“栏中选择“Web应用程序”,点击“下一步”按钮。
3。“新建Web应用程序 ”窗口中,在“项目名称”栏中输入“StockQuoteWS”
“服务器”中选择“Sun Application Server 9”, 这是Web Services 部署和运行的平台
“Java Ee版本”中选择“Java EE 5”, 这样可以使用JAX-WS来开发Web Services

4。点击“完成”按钮后,在NetBeans IDE中生成StockQuoteWS项目。接下来建立一个StockQuote的POJO类。鼠标右键点击“StockQuoteWS项目”,选择“新建”->“Java类”。
5。“新建Java类 ”窗口中,输入类名和包名,比如
类名:StockQuote
包名:com.sun.sdn.demo.ws

6。为StockQuote类添加一个getQuote()的方法. 方法实现如下:
public String getQuote(String stockCode){ String quote = ""; if (ht.containsKey(stockCode)) quote = (String)ht.get(stockCode); return quote; } |
7。把POJO发布为Web Services,在JAX-WS中非常简单,仅仅需要在类前面加上@WebService() 。而POJO类中所有的公共方法也都会转换为Web Services 的方法.
/* * StockQuote.java * * Created on 2007年8月20日, 下午11:25 * * To change this template, choose Tools | Template Manager * and open the template in the editor. */
package com.sun.sdn.demo.ws; import javax.jws.WebService; /** * @author Ada Li */ @WebService() public class StockQuote { /** Creates a new instance of StockQuote */ public StockQuote() { init(); } java.util.Hashtable ht = new java.util.Hashtable(); void init(){ ht.put("601988.ss", "5.90"); ht.put("000002.sz", "30.11"); } public String getQuote(String stockCode){ String quote = ""; if (ht.containsKey(stockCode)) quote = (String)ht.get(stockCode); return quote; } } |
在StockQuote类添加@WebService()的标注(annotation)之后,就可以在NetBeans的StockQuoteWS项目中看到新生成“Web服务”目录,目录下列出了”StockQuote”以及方法“getQuote”

8。到这一步已经完成了StockQuote的Web服务开发,接下来要部署以及测试这个Web服务。
9。鼠标右键点击“StockQuoteWS”项目,选择“部署项目”。部署完成后,可以在NetBeans “运行环境”->"服务器"->“Sun Application Server 9”->"应用程序"->“Web应用程序”下看到“StockQuoteWS”, 表示Web服务成功部署在了Sun Application Server 上。

10。NetBeans IDE 提供了Web服务的测试工具。鼠标右键点击“StockQuoteWS”项目->"Web服务"-〉“StockQuote”,选择“测试Web服务”,浏览器会打开“StockQuoteService Web Service Test”窗口。在文本框中输入“601988.ss”,点击“getQuote”按钮。

输出结果如下图:

11。在这个Java EE 5 平台上实现的Web服务,可以通过Web服务的测试工具察看WSDL以及SOAP的信息。而UDDI,测试工具使用的是NetBeans自带的Web Services Registry。
StockQuoteWS部署完成后,最重要的记住WSDL的位置,即“http://localhost:8080/StockQuoteWS/StockQuoteService?WSDL”。接下来创建Web服务客户端时候,需要这个URL.
相关推荐
在这个教程中,我们将深入探讨Java EE 5如何实现Web服务,并通过多种客户端实例来展示其实用性。 首先,我们要理解Java EE 5中的Web服务基础。这通常涉及到JAX-WS(Java API for XML Web Services)规范,它是Java...
Java EE 5是Java平台企业版的一个重要版本,它提供了丰富的功能来开发...文档中的"(五)Java EE 5实现Web服务(Web Services)及多种客户端实例-移动客户端.pdf"应详细讲解了这些过程和技巧,建议仔细阅读以加深理解。
本资料主要探讨了在Java EE 5环境中如何实现Web服务以及如何创建不同的客户端实例来调用这些服务。 首先,理解Web服务的基础概念至关重要。Web服务基于SOAP(简单对象访问协议)和WSDL(Web服务描述语言),它们...
本教程将深入探讨如何在Java EE 5环境中实现Web服务以及创建胖客户端来消费这些服务。 1. **Web服务基础**: - **SOAP (Simple Object Access Protocol)**:Web服务的核心协议,用于交换结构化信息,以XML格式封装...
总之,Java EE 5提供的Web服务支持和瘦客户端实例展示了如何在企业级环境中构建可扩展、跨平台的解决方案。通过理解这些概念和技术,开发者能够更好地设计和实现分布式系统,提高系统的互操作性和可维护性。
本资源的标题"Java EE平台上实现Web服务及多种客户端实例-小结"表明它聚焦于总结如何在Java EE环境中创建和消费Web服务,并提供了不同客户端的应用示例。 Web服务是一种通过HTTP协议传输数据的方式,它允许不同...
在Java中,通常使用JAX-WS(Java API for XML Web Services)或JAX-RS(Java API for RESTful Web Services)来实现Web服务。 **2. MyEclipse 8.6支持** MyEclipse是Eclipse IDE的扩展,特别适合Java EE项目的开发...
Web Services是一种基于XML的技术,它提供了一种标准的方式来实现服务的描述、发现和调用。Web Services架构包含了SOAP、WSDL、UDDI等支持服务请求者与服务提供者之间的交互,以及用于Web服务发现的规范。XML是Web ...
Java 6实现Web服务(Webservices)是一个重要的IT技术话题,它涉及到企业级应用程序之间的数据交换和通信。Web服务通常使用XML(eXtensible Markup Language)进行数据表示,并通过SOAP(Simple Object Access ...
9. **WS(Web Services)**:Java EE支持创建和消费Web服务,如JAX-WS(Java API for XML Web Services)和JAX-RS(Java API for RESTful Web Services)。 10. **JNDI(Java Naming and Directory Interface)**:...
JAX-WS(Java API for XML Web Services)是Java平台上的一个标准API,用于构建和消费基于Web服务的应用程序。这个框架使得开发人员能够轻松地创建、部署和使用XML Web服务。JAX-WS是Java EE的一部分,但也可以在...
本文将详细介绍如何在Java中调用.NET Web服务,涉及的关键技术包括WSDL(Web Services Description Language)、JAX-WS(Java API for XML Web Services)以及一些必要的工具和步骤。 1. **理解WSDL**: WSDL是描述...
- JAX-WS是Java平台上的Web服务开发框架,用于创建SOAP Web服务和客户端。它包含了WS-I Basic Profile的实现,确保跨平台的互操作性。 5. **Java API for RESTful Web Services (JAX-RS)** - JAX-RS是Java EE的一...
本实例着重于使用Java API for XML Web Services (JAX-WS) 来实现这一目标。 1. **Web服务基础** Web服务是通过XML(可扩展标记语言)和相关标准进行通信的应用程序接口。它们允许不同系统间的互操作性,即使这些...
本文档主要介绍了使用 Myeclipse 8.5 开发基于 JAX-WS 的 Web Service 实例的步骤,涵盖了 Web 服务程序和客户端程序的基本流程,以及在 Weblogic 10.3.4 中部署 Web 服务的步骤。 一、Web 服务开发环境 * JAVA ...
例如,文章中提到的“RideSynergy”应用可能是用来演示如何利用Java EE 5的Web服务和EJB 3.0功能来构建一个简化开发流程的实例。 综上所述,Java EE 5通过减少复杂性并提高开发者的生产力,巩固了其在企业级应用...
- **JAX-RS(Java API for RESTful Web Services)**:用于构建RESTful服务,提供注解驱动的方法来创建和消费Web服务。 - **JSF(JavaServer Faces)**:用于构建用户界面的MVC框架,提供组件化和事件驱动的开发...
- **Web 服务客户端与服务端**:讲解如何在 Java 应用中实现 SOAP Web 服务的客户端和服务端。 ##### 第15章:RESTful Web 服务 - **REST 架构风格**:介绍 RESTful 架构的基本原理和设计理念。 - **JAX-RS 规范**...
5. **Web Services**:如SOAP和RESTful服务,Java提供了JAX-WS和JAX-RS规范来创建和消费这些服务。理解如何定义WSDL,创建SOAP服务,以及使用JSON进行RESTful交互,是现代Web开发的重要技能。 6. **WebSocket**:...
JAX-WS提供了一种简单的方式来创建SOAP(Simple Object Access Protocol)Web服务,它集成了Java SE和Java EE平台,使得开发者可以方便地实现服务接口和服务实现,然后通过工具自动生成WSDL(Web Service ...