在几个软件销售商(例如IBM, Microsoft, Hewlett-Packard, 和 Oracle)对于新的软件战略所做的宣言声中, Sun Microsystem 公司的软件游戏似乎推去了它的光彩.它希望成为Web 服务的发起者和领导者的计划也似乎成了孤芳自赏. Sun近来表明它将公布一个新的主要战略. 但是, 从"软件作为服务"解决方案的领导者Sun 公司的角度来说,它在获取Web 服务方面的领导地位的计划上采取模棱两可的态度也是情有可缘的.
一个明显的迎头赶上的迹象?
Web服务的概念就是使用松散耦合的消息(而且越来越多的是依靠XML界面)发送的内容和软件过程来为一些特定的用户需要进行"服务".早在1998年,Sun公司的CEO, Scott McNealy,与Oracle公司的Larry Ellison 一道, 预言了Web上的服务功能将替代应用程序. 与这个预言一同到来的还有网络应用, 连接互联网的设备, 移动设备的程序(用Java编写),内容存储,甚至还有提供这种新的功能的Web应用, 这些都引起了许多应用服务提供商(ASP)的讨论.
这些现象中的许多--作为其它功能的一部分--都包括在了微软的.NET战略里,微软已经宣扬它很久了. 现在,当Sun公司的颇有价值的技术Java逐渐进入主流的时后,大家都认为它在玩一个迎头赶上的游戏来保持自己的领导地位.
不要犯错误:Sun公司理解计算和系统服务.这个软件销售商在面向服务的任何方面,从IS文件系统到它的存储,操作系统,和应用程序中间件(iPlanet)都取得了领先地位. 甚至连Java JCP也已经增加了面向以服务为中心的计算的应用编程界面(API).
Sun ONE 和智能服务的概念
但是, 没有任何迹象表明Sun公司的专门的Web服务战略开始了, 直到它在2001年1月公布了它的Sun开放网络环境(ONE). Sun ONE引入了智能服务和上下文敏感的Web 服务的概念. 智能服务成为上下文敏感的使得开发者和用户可以基于身份, 位置, 授权, 或者时间等概念作出决定, 但是Sun公司的构想除了对简单的Web 服务标准的支持以外没有获得什么实际的支持. 智能服务的构想还有一些没有解决的细节, 而且Gartner公司相信Sun公司在2002年的下半年以前无法在这个领域取得什么实际的进展.即使是已经被大吹大擂了很久并且已经发布了的Java Jini也不属于智能服务的短期目标,虽然Jini中的概念可能在几代产品中逐渐实现到产品中去.
Sun公司Sun ONE的最大优点就是它的最大劣势. 因为Sun公司很久以来一直声明它的产品和服务是面向服务趋动的网络,这种严重依靠没有新意的想法的软件战略可能让许多公司认为Sun ONE根本就没有提供些什么新的东西.
但是, Sun ONE中的一些概念并不能使Sun公司的营销情况有所好转(例如对SOAP, WSDL, UDDI,和其它 Web services 概念的支持).这些概念以及Sun ONE的其它方面显示了Sun公司希望帮助定义Web服务的意图. 引入其对手微软公司的Web服务技术表明了它不会在软件构架方面和微软竞争,虽然存在着战争的氛围. 近来将JXTA作为一套新的技术进行引入也增加了人们的困惑. JXTA主要是点对点的技术,它与Web服务的概念是重叠的.虽然JXTA的定位模糊, 但它最终将在Sun公司的Web服务战略中扮演一个重要的角色.
Java在Web服务中扮演的角色
具有讽刺意味的是,Java的发布让Sun公司在提供通过Web发送服务所必须的软件模块方面取得了巨大的成功. Java代表了开发基于互联网和面向服务的软件的主要开发和运行平台. 在Java社团里(也就是JCP,一个致力于升级Java"标准"的组织),这一点没有被摸杀.
不久以前,JCP在Java 2 企业版(J2EE)里增加了XML和基于服务的API的标准, 而且新的建议还在考虑之中.Sun公司是XML标准制定的主要参与者,但是对XML的较早的参与并没有使它在XML的使用方面成为领导者,这也制约了Sun公司. 虽然XML已经进入了Java的世界(JAX API),但它仍没有被定位为增强企业内以及企业外多个不同的技术架构之间发送Web服务的主要机制.
在考虑到Sun公司在使Java作为一种成功的语言和平台被接受的过程中所经历的困难的时候,所有这些都是可以理解的. 它在平台方面所作的努力随着旨在J2EE,J2SE和J2ME标准的发布到达了顶点.但是对这些平台的关注使得Sun公司没有精力再在应用程序和服务发送方面提供更多的风格(与.NET相似)
Web 服务的观众
我们相信JCP将继续为Java平台增加Web服务功能. 而且, 到2002年Java 平台将支持重要的Web服务标准.但是,到2003年,在百分之八十的工程中,Java开发平台的主要使用者将仍然是集中于编写商业程序的程序员,而不是那些公司部门的为商业处理过程编写商业解决方案的开发者(0.8 的可能性).这意味着对Web 服务的讨论将集中于是选择Java 还是.NET作为平台而趋向于忘记Web服务本身. Web服务的目标是加强面向过程的平台以便技术上较生疏的雇员能够更快的集成和建立其系统. Java能够有所帮助, 但它没有解决大多数突出的问题.