CSDN博客

img CSDN_document

蜂巢开源计划:加速Java应用的采纳

发表于2004/10/29 13:25:00  2025人阅读

在构建J2EE应用程序方面,迫切需要一种内聚且易于使用的编程模型。对于新的Java开发人员,只是为了构建简单的应用程序,就需要学习大量的API;高级J2EE开发人员则必须编写乏味的管道代码,工具设计者被限制在他们如何简化由于底层复杂性所带来的体验。此外,当Java开发人员为了开发和集成而把J2EE转移至面向服务架构时,他们需要下一代工具。Beehive(蜂巢计划)的目的就是要满足这些需要。

Beehive是一个被提议的开放源代码项目,它基于Workshop应用框架。BEA已经提议采用Beehive来建立第一个跨容器、易于使用的编程模型,以及建立一个基于J2EESOA的应用程序模型。Beehive项目将提供一致、抽象和易于工具化的编程模型,并提供一种方式来让开发人员更加有效地利用JDK 1.5提供的最新技术来构建应用程序。我们期望这个项目将把新用户吸引到构建企业Java应用程序更简单的方式上,同时也用某种模型来吸引有经验的J2EE编程人员,该模型避免了这些编程人员反复编写相同的J2EE代码。

Beehive是一个可扩展的Java应用程序框架,该框架具有针对Web服务、Web应用程序和资源访问的集成元数据驱动的编程模型。该框架利用了即将推出的JDK 1.5的最新创新,特别是JSR 175元数据注解。Beehive的目的是为构建消费服务和其他企业资源提供一站式的资源。目前计划中的组件包括:

l 控件——控件(Control)架构是一个基于注解JavaBeans的轻量级组件框架,它公开了用于访问各种J2EE资源类型简单而一致的客户机模型。该框架提供了大量的函数,其中包括:基于JavaBean的客户机访问、通过JSR-175元数据和外部配置数据的配置、自动资源管理、上下文服务和用于创建新控件类型的可扩展设计模型。

l NetUI——NetUI Page Flow是一个基于Apache StrutsWeb应用程序框架,具有易于使用、基于JSR-175元数据的单文件编程模型。该页面流构建在模型/视图/控制器元素的核心Struts分离的基础之上,并添加了一些特性,比如自动状态管理和与控件、XMLBeansJavaServerFaces的一流集成。

l 用于Java Web服务的元数据——这个组件是JSR-181规范的实现,并且是Beehive框架的关键部分。JSR 181Java方法和类中使用JSR-175元数据注解,以便轻松构建Web服务。

通过BeehiveWorkshop应用程序框架核心将可用于其他J2EE平台。使用WebLogic Workshop的开发人员将能使用Workshop元数据驱动编程模型来创建Web服务、Web应用程序和Java控件,然后在任何J2EE应用服务器上运行这些组件。最初版本将运行在Tomcat上,其他平台也将容易实现。而2004524号在eWorld上我们已经看到了基于Tomcat的实现。

 

Beehive让Java开发人员成功

l通过供选择应商和可移植性进行投资保护

w通过向非BEA平台提供可移植性,解放了专有软件锁定的用户,从而保护在应用程序代码资产中的投资。

w为开发和部署选择技术和供应商。

w可移植到任何应用服务器。

w设计时环境和运行时环境之间的明确分离,为开发人员提供了广泛的工具选项。

l 使Java更易于访问

w使JavaJ2EE更易于为广大开发人员使用。

w用于行为的声明性/抽象规范的元数据驱动编程模型。

l 构建SOA

w用于编排和组合应用程序的可视化、声明性、基于服务的模型。

l Java和企业应用程序构造

w基于MVC/StrutsWeb应用程序。

Web服务。

w用于简化系统集成和编排的Java控件。

wJava友好的方式使用具有全能XMLXML Beans

 

.NET更容易的企业Java开发

Java企业应用程序开发需要像.NET那样简单,同时保持基于Java平台提供的丰富性、健壮性和可选择性。易于使用变得更加重要,因为.NETJ2EE都可用在企业开发中。

差不多在两年前,BEA引入了WebLogic Workshop来开始应对这些挑战。WebLogic Workshop通过利用应用程序框架提供的高生产率编程模型,组合了传统的IDE。通过使用声明性、元数据驱动的编程模型,该应用程序框架抽象了与开发Java和企业应用程序相关的复杂性。另外,Workshop的面向服务开发和集成范例表明它是易于促进实现接口抽象的第一个开发工具——换句话说,开发人员能够很容易地构造具有操作完整性的应用程序,并且它不会增加时间,且易于与现有和未来系统集成。

差不多在两年前,我们开始了标准过程。从那时起,BEA已经在驱动JSRJSR-181JSR-207)和使用Java社区来标准化Java注解工具(JSR-175)中取得了一些成功。但Java社区最为急迫的需求是使开发J2EE和企业级应用程序更加容易和更具可访问性。我们继续专注于JCP,但快速采用和发展大胆的新编程模型不一定就是正确选择。BEA长期以来一直使用其他工具,比如OASISWS-IIBM的早期双向标准,以及除JCP之外的开放源代码项目,从而驱动创新和投资保护,并支持客户迁移到下一代的SOA部署。

 

标准化的BEA模型

这是BEA承诺在驱动其行业领先创新的标准化这一长期任务中的另一个里程碑。BEA将继续其品牌整合的工作,通过所有适当的工具来为客户提供投资保护。下面概述标准化的模型。

下面是正在进行的这一模型的例子:

 

协议

l BEA/Microsoft/IBM WS-*协作——(在标准化之前)WS-*家族已经主要由这三个供应商进行初始设计

l WS-*标准化——W3COASIS

l WS-*验证——Web服务互操作性组织(Web Services Interoperability OrganizationWS-I

 

编程模型

l BEA/IBM Java协作——在2003年宣布,该协作是建立在BEA/IBM/Microsoft Web服务协作基础之上的。它重点放在加速服务器端Java API标准化上,特别针对SOA

l Java Community Process (JCP)

l 欧洲计算机制造商协会(比如XScripts

l W3C(比如XQuery

l OASIS(比如BPEL

 

开放源代码软件(OSS)

XMLBeans去年已经开放源代码,目前是一个Apache项目。

 

独立软件开发商(ISV)机会加大

ISV也将从Beehive中受益。开放源代码是加速采用Beehive提供的高级编程模型和技术,以及在各种开发者工具和平台社区之间拓宽支持的一种方式。开放源代码IDE没有以足够满意的方式完成这一点。抽象API复杂性的那些应用程序框架做到了这一点。通过加速其接受程度,BEA改善了整个企业Java生态系统,并为BEAISV和集成合作伙伴及Java开发人员开启了新的市场机会。

应用程序框架在以下几个方面具有重大意义:

l 运行时框架

l 技术和供应商的选择

l 从上到下的透明性,便于控制

l 使JavaJ2EE更易为广大开发人员所接受

l 用于编排和组合应用程序的可视化、声明性、基于服务的模型

l 设计时环境和运行时环境之间的明确分离。

框架的功能是重要的:

l 需要是服务驱动的编程模型

l 用于行为的声明性/抽象规范的元数据驱动编程模型

 w同步(用于“实时”查询)。

 w异步(用于业务操作)。

l 基于MVC/StrutsWeb服务和支持拖放编排的简化组件模型的Web应用程序;统一的互联模型

l 混合JavaXML来支持工具和运行时环境的无缝集成

BeehiveJava控件保持了对ISV的特殊承诺。现在ISV第一次可以节省开发成本,利用简化的Java控件用户模型,并可以移植到任何其他兼容J2EE的容器。

Workshop控件也是可扩展的——现在有超过100ISV提供了自己的控件,这些控件采用了Workshop工具和外观,可以支持增值服务的定制/编排。其中最重要的是,当客户或ISV构建一个控件时,该控件可以在业务流程(从Web应用程序或门户到构建Web服务)中重用,或者在WebLogic应用程序中的其他任何地方重用。
阅读全文
0 0

相关文章推荐

img
取 消
img