|
Preface
Web services have taken a dramatic step forward over the past
year. We are quickly moving through the transition from the
introduction of a compelling new architecture to deploying
Web services solutions that provide significant customer value.
In building these solutions, developers are being provided
with the wave of updated tools and other supporting resources
they need to be as productive as possible. Most importantly,
the industry specifications that are available have rapidly
expanded beyond the basics of SOAP, WSDL and UDDI, and into
areas supporting much more sophisticated requirements. Finally,
focused industry efforts to provide practical developer guidance,
such as the Web Services-Interoperability Organization, have
emerged to complete the picture and work across industry standards
organizations.
Roadmap and Architecture
Along with the fast evolution of specifications and technologies,
so has our view of the Web services architecture. As basic
Web services concepts were introduced, many developers took
early steps to develop solutions with relatively simple message
patterns and requirements. These were the 'Stock Ticker' and
'Weather Report' services that became our latest version of
'hello, world'. With that experience behind us, it is now
clear that a much richer set of protocols are required to
develop the next wave of distributed systems. Industry leaders,
such as Microsoft and IBM, have already stepped up to meet
these needs. The latest Web services specifications fall into
a few key areas - with others still in progress.
First, security requirements are being addressed through
the WS-Security specification. While this is a very lightweight
specification, it provides the key elements needed to carry
security tokens, sign, and encrypt SOAP messages in a consistent
way. More work remains, but this necessary foundation allows
us to expand beyond simply transport security for Web services,
and we now have a framework for much richer security features.
Next, support for distributed transactions has been introduced
through the WS-Coordination and WS-Transaction specifications.
These protocols allow us to develop much more sophisticated
Web services solutions, but also require us to look at our
Web services applications from a different perspective. Activities
can now be coordinated across multiple Web services, instead
of each being completely independent..
Finally, the release of the Business Process Execution Language
for Web services (BPEL4WS) allows us to match our Web services
with our business process and workflow requirements.
These latest specifications provide the next layer of functionality
we need to build distributed systems with Web services. More
work remains to expand capabilities around security and to
address reliable messaging. As we continue to evolve our Web
services implementations, we should consider the implications
of having these rich protocols readily available as a part
of our development tools and environment.
The Interoperability Imperative
While the suite of Web services specifications has expanded
dramatically, their parallel development has introduced challenges
in interoperability. The pace of development has, in some
areas, resulted in ambiguities or redundancy. Also, many of
the core specifications are general purpose, and can be applied
beyond the scope of Web services. The result is variation
in how developers use the specifications in their Web services,
and a lack of interoperability between implementations.
Fortunately, the industry has already identified this challenge
and taken proactive steps to address it. The solution is the
new Web Services-Interoperability Organization (WS-I). WS-I
is a consortium of vendors and customers working together
to provide developers with the resources and guidance they
need to develop interoperable Web services. The organization
not only provides guidance, but also sample code and testing
tools for developers to implement their Web services the right
way.
Future Expectations
As we continue to expand our Web services solutions, we should
do so with the expectation that the protocols we have available
to us will become increasingly sophisticated. In many ways,
limitations we encounter today can be viewed as temporary.
As developers get to the business of coding their Web services,
incorporating the work of WS-I helps ensure that the requirements
around interoperability are met.
Christopher Kurt
Secretariat and Founding Board Member, Web Services-Interoperability
Organization
Group Program Manager - Web Services Standards, Microsoft
Corporation
|
Web Services--IT技术的第三次革命
目前,被业界称为计算机IT技术的第三次革命(继PC和Internet之后)的Web Services技术已经逐步显露出巨大商业机会,软件业因此正在酝酿一场巨变。这将是自从WWW问世以来这个产业所面临的一次最大规模的"洗牌",但也酝酿着巨大的商业机会。商业机会的实现,需要依靠技术和应用模式的双重保障。Web
Services技术的发展将促使Web Services应用的成熟和完善,而Web Services应用模式将为商业应用提供指引,并促进商业应用的普及。
XML Web Services是当今IT业界的焦点所在。Web Services的主要目标就是在现有的各种异构平台的基础上构筑一个通用的与平台无关、语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实施彼此的连接和集成。如果需要用一句话来概括Web
Services与传统Web应用技术的差异的话,那就是,传统Web应用技术解决的问题是如何让人来使用Web应用所提供的服务,而Web
Services则要解决如何让计算机系统来使用Web应用所提供的服务。
Web Services技术完全基于标准的技术,只有基于标准,所有的开放厂商才有相同的准则,才能够在各自的平台上开发出具有跨平台互操作能力的软件产品和解决方案。标准是达成跨平台互操作能力的灵魂。
为什么要学习Web Services
一旦你理解了Web Services的架构和应用模式,同时有了一种豁然开朗的感觉,那么你在从事系统架构的时候,无论它是不是Web
Services应用架构,你都可以使用另一种不同于传统的方式去思考和解决问题。对于任意一个开放式互操作的系统而言,Web
Services技术所包含的体系架构思想都将令设计人员获益匪浅。
开放互操作能力自从网络和Internet开始蓬勃发展以来,就一直是系统架构人员和应用开发人员牵肠挂肚的一个不圆满的梦。从Web
Services架构慢慢成形开始,这个梦将慢慢地被圆了。Web Services不但令互操作技术的整体水平上升了一大步,同时由Web
Services革命所引发的新的商业模式的革命正蓄劲待发。
本书的内容
关于本书的内容从书名即可一目了然,本书的内容涵盖了Web Services的各种关键技术、Web Services的整体体系架构和应用体系架构,以及Web
Services应用的设计和开发。对于本书的潜在读者,应当是那些对计算机技术的基础和架构已经有了一定的了解,对Web应用的架构有一定了解,同时又对当今正在发生的计算机技术的新一代技术与应用革命--Web
Services浪潮的本质有着浓厚的兴趣的读者。本书涉及到了一定的面向对象技术,虽然仅掌握基本的对象概念也能阅读本书,不过还是建议在阅读本书的时候对面向对象技术能有一个整体的了解,因为Web
Services究其实质,从某一方面来看,它是部署在Web上的可编程对象,同时,Web Services的各种技术和架构都是基于面向对象的理念进行架构的。
本书以Web Services技术系列为主线,逐一详细分析解释包括Web Services的各种核心技术,包括XML,
Namespace, XML Schema, SOAP, WSDL, UDDI, WS-Inspection,
WS-Security, WS-Routing等。在分析阐述的同时,使用了大量的应用设计案例和开发实例,以使读者能够更形象地理解这些技术和技术的设计思路、设计原则和相应的实现方法。具体的,本书使用的实现平台是Microsoft.NET。
目前的第一代Web Services技术是Web Services所承诺的互操作能力的首次尝试,也是Web
Services技术发展的基础和核心。Web Services技术正在不断发展着,无论如何发展,其核心就是力求应用获得最佳的开放互操作性,力求在满足应用互联需求的时候,使开发和实施的代价降到最小。这一宗旨正是Web
Services的核心理念。阅读一遍本书也许并不能使你对Web Services有深刻整体的了解,多次阅读本书,体会各种应用案例中蕴涵的设计思想的同时,辅助以开发实现或许是融会贯通的一个好方法。
本书的技术支持
Web Services技术正在不停地发展中,同时本书的写作时间也有所仓促,因此,书中的错误和遗漏在所难免,欢迎广大读者批评和指正。无论您对书中采用的应用案例、开发实例,还是各种技术细节或相关的体系架构等方面存在疑问,你都可以通过fennivel@uddi-
china.org与我联系。另外,关于Web Services技术的应用和研究,你还可以在forum.uddi-china.org上参与讨论,同时,www.ws-c.org和www.uddi-china.org也是两个很好的Web
Services技术的中文站点。
致谢
在本书的完成过程中,Microsoft的Christopher Kurt先生、上海市科委的张鳌老师、聂春泥老师、复旦大学的顾宁教授、我的合作者梁宇奇、上海华和得易信息技术有限公司的同仁郑磊、徐蔚、袁柏成以及我的朋友和伙伴黄静静、曹晶、陈曦、范晓锋、倪凯、金殷勇等,还有我的父母家人们,都给予了我很大的帮助和支持,在此一并向他们表示我真挚的感谢!
柴晓路
2002年11月于上海
|
|