WebLogic Workshop
在2002年WebLogic首次发布时,WebLogic Workshop 成为通过XML和Web服务关注编写SOA的第一个Java IDE。随着BEA WebLogic 8.1在2003年的发布,我们已经把WebLogic Workshop从1.0版的Web服务工具转变成了一个独一无二的包罗万象的开发环境,可以编写、利用以及编排基于SOA的应用程序。使用Workshop,就可以建立任何一种面向SOA的代码,其中包括纯粹的Web应用程序、J2EE程序、门户、业务流程自动化、XML聚合/转换、消息代理等等。
在发布第一个用于SOA的IDE(在Workshop 8.1之前,集成的技术发展水平就是一堆互不集成的工作大杂烩)的时候,BEA确实引入了多个专有的创新。毕竟,专有和创新有着与生俱来的联系。有着大量先例说明,标准的内容由于采用、认可专有创新,而不是自行创新,从而变得更好:TCP/IP、SQL、Web、Java、以及XML/Web服务,都是沿着这条路发展的。回想 WebLogic的第一版(回到1996年,对于它是否为业界第一台Web应用服务器仍有争议),其中包括了大量用于Web页面呈现、数据库访问、事件处理、服务器端组件等方面的专用创新。WebLogic优于其他专用技术的同行(著名的例外是 IBM 的 WebSphere)之处在于,WebLogic很早就积极地投入了API的标准化工作委员会(servlets/JavaServer Pages [JSP]、Java数据库连接[JDBC]、JMS、企业级JavaBeans[EJB],等等)。
对于我们为SOA在基于 Workshop创新所做的投资,BEA一直在大力保护。我们有多种手段确保对投资的保护:
协议:
· BEA/Microsoft/IBM WS-*协作-WS-*协议族开始主要由这三家厂商制定(在标准化之前)
· WS-*的标准化-W3C委员会和OASIS(结构化信息标准推进组织)
· WS-*的验证和分析-Web服务互操作性组织(WS-I).
编程模型:
· BEA和IBM进行的Java协作-在2003年发布,这个协作是在BEA/IBM/Microsoft Web服务协作之上构建的。它的重点在于推进服务器端Java API的标准化,特别是SOA方面。
· 欧洲计算机制造商协会(ECMA)(例如,XScript)
· W3C(例如,XQuery)
· OASIS(例如,业务流程执行语言[BPEL])
· Workshop产品的可移植性-如果Workshop生成了符合J2EE标准的应用程序,那么这个产品可以不加修改地运行在其他任何符合J2EE规范的容器里
· 开源软件(OSS)-映射到J2EE的开放源代码运行时基础架构,因此支持到WebLogic之外的容器的移植性。
Workshop投资保护的十大措施
实际上,对于在WebLogic Workshop 8.1 IDE中的每项创新,BEA都会为客户或合作伙伴提供或发布一项长期的投资保护方法。下面,我们一起来看看Workshop的10大创新,以及如何保护在用Workshop开发的应用程序中的投资。
(10)元数据和JSR-175:Workshop大量采用JavaDoc注解来获取应用程序的元数据-元数据是指发给容器的声明指令,指令里封装了那些经常使用但是通常很复杂,开发人员不愿意重复编写代码的那部分活动。像 Workshop 这样的智能工具为编写和更新这类元数据提供了结构化的支持(例如属性表)。通过把这些元数据以内嵌方式包含在应用程序的代码里,开发人员编程时需要的代码更少。(XML部署描述符仍然由相应的工具生成)。至少,部分是因为这个方法的流行,Sun和Java社区的其他成员已经决定直接在Java语言内部采用大量的元数据(JSR-175,它包含在J2SE 1.5版里)。现有的Workshop产品会用 WebLogic即将发布的版本自动升级为JSR-175语法。
(9)BPEL、BPELJ 和JPD:BPEL规范最初是由BEA、IBM 和 Microsoft制定的-这是一套最好的知识产权组合,包括来自Microsoft的XLANG、IBM的WSFL以及BEA的Process Definition for Java (用于Java的流程定义,JPD)。从那以后,BPEL已经转变交给OASIS进行标准化。
BPEL是基于XML的编程语言,本身也是用XML编写的,所以它是与平台无关的(它可以运行在Java、.NET等平台上)。BPEL既可用来定义(编写)Web服务,也可以编排(编写使用Web服务的工作流)Web服务。所有在BPEL中的数据操纵工作都是用XML和Web服务完成的。例如,条件用XPath编写。消息的发送和接收用WSDL端口类型,等等。
在另一方面,BPELJ(用于Java的BPEL)定义了如何把BPEL和Java混合起来(混合的方式与JSP把HTML和Java混合的方式不同)。使用BPELJ,条件和数据操纵可以通过Java代码注解的代码段完成。这样就允许传统的企业计算,例如通过JDBC的数据库访问,能够与基于BPELJ的业务流程无缝地集成在一起。BPELJ允许Java/J2EE组件,例如JavaBeans,可以用与Web服务编排一样的方式进行编排。








