|
DickMcCarrick
内容开发人员,IBM
2005年7月18日
通过本文全面了解IBMWorkplaceDesigner,它是一个为IBMWorkplace世界带来LotusDominoDesigner类型特性和能力的应用程序开发工具。
下载IBMWorkplaceDesigner! 请参阅该页,并按照相关说明下载IBMWorkplaceDesigner的预览版本。 |
编辑说明:在本文发表的时候,可以从“pre-release”下载WorkplaceDesigner。WorkplaceDesigner的最终版本将在2005年第三季度发布。本文中的一些描述和截屏可能和最终版本有差异。
在很多公司中,业务软件平台是否有用取决于能够用该工具开发的应用程序。基于此,IBM推出了基于标准的开发工具IBMWorkplaceDesigner2.5,让开发人员快速方便地为IBMWorkplace产品家族2.5版创建组件。可以从任何Web浏览器在IBMWorkplace应用程序中使用这些组件。
“即便没有很多DominoDesigner这类开发平台的使用经验,WorkplaceDesigner也为您提供了一种简便的方式,不需要对Java有很深的了解,就能对协同组件进行面向文档的编程。” |
本文将为您介绍WorkplaceDesigner2.5。我们首先将简要介绍WorkplaceDesigner以及如何使用它创建Workplace应用程序,然后将进一步考察WorkplaceDesigner众多特性中的一部分。我们假设您具有Web应用程序开发的经验。对IBMWorkplace产品(如IBMWorkplaceCollaborationServices2.5和IBMWorkplaceServicesExpress2.5)有所了解也会很有帮助。要了解更多的信息,请参阅IBMWorkplace资源中心。此外,要深入了解IBM是如何开发WorkplaceDesigner的,请参阅developerWorks:Lotus文章“设计WorkplaceDesigner:IBMWorkplaceDesigner设计团队访谈录”。
什么是WorkplaceDesigner?
如果具有Notes/Domino编程背景,那么您可以将WorkplaceDesigner看作是为IBMWorkplace提供DominoDesigner类型应用程序开发功能的一种工具。事实上,如果熟悉DominoDesigner,就会看到它与本文后面部分描述的许多IBMWorkplace特性和概念的大量相似之处。这种相似性并不是偶然的,WorkplaceDesigner是基于DominoDesigner的思想创建的。这样,有经验的Domino开发人员就能利用原来的技能,快速为IBMWorkplace创建新的应用程序。图1显示WorkplaceDesigner的截屏。
图1.WorkplaceDesigner

但是要记住,WorkplaceDesigner的目标不是取代DominoDesigner。DominoDesigner仍然是Notes/Domino环境中开发应用程序的基本工具。WorkplaceDesigner允许Notes/Domino开发人员把他们的专长扩展到IBMWorkplace产品。(关于即将发布的DominoDesigner7新特性的介绍,请参阅developerWorks:Lotus文章“LotusNotesandDominoDesigner7.0Beta3新特性”。
即便没有很多DominoDesigner这类开发平台的使用经验,WorkplaceDesigner也为您提供了一种对协同组件进行面向文档的编程的简便方法,不需要对Java有很深的了解。WorkplaceDesigner对底层的J2EE技术没有公开,因此这一领域的专家不一定要开发产品应用程序,虽然如果需要Java的强大功能和灵活性,有大量的API可以访问IBMWorkplace服务器所提供的数据和服务。对直接访问代码的能力有更高要求的开发人员可以使用RationalApplicationDeveloper这样的工具。WorkplaceDesigner提供了一些扩展点,经验更丰富的Java开发人员可通过这些扩展点来共享RationalApplicationDeveloper和其他IBM工具创建的代码制品。
深入WorkplaceDesigner
在内部,用WorkplaceDesigner创建的组件是在IBMWorkplace中所用,并且支持MVC(模型、视图、控制器)架构的制品。此外,被部署在服务器上的组件所创建的文档都以XML的形式保存在关系型数据库中。这些文档是用XSD模式定义的,可以通过XPath语言访问。WorkplaceDesigner包含修改模式的模式编辑器。
注意,WorkplaceDesigner应用程序不像Notes数据库那样是自成体系的。在Notes/Domino中设计应用程序时,可以立即进行部署并运行。而在Workplace中,必须将组件部署到将要运行的Workplace服务器上,然后执行其他设置,将组件包含在一个或多个Workplace组合应用程序中。
WorkplaceDesigner以Eclipse3.0为基础,完全与IBMWorkplaceCollaborationServices2.5以及IBMWorkplaceServicesExpress2.5集成在一起。(请参阅developerWorks:Lotus文章“IBMWorkplaceServicesExpress介绍”。)它安装在IBMWorkplaceManagedClient之上。WorkplaceDesigner包括IBMWorkplaceCollaborationServices2.5和WebSpherePortal的开发人员许可证,可以无缝的部署组件到服务器上,以测试或者组装成模板和应用程序。可以用Workplace服务器进行身份验证,从IBMWorkplace客户机启动该工具。可以和WorkplaceBuilder结合使用这些组件。
WorkplaceDesigner结合了以下工业标准:
XML用于数据访问和交换HTML/CSS用于门户开发在工作站上,WorkplaceDesigner可以在Linux、MicrosoftWindows2000或XP的IBMWorkplace中运行。在服务器上,WorkplaceDesigner应用程序可以在所有支持的平台上,在WorkplaceServicesExpress2.5和WorkplaceCollaborationServices2.5的支持下运行。
WorkplaceDesigner支持多种数据库平台,其中包括IBMCloudscape、DB2、Oracle或MicrosoftSQLServer。此外,WorkplaceDesigner也支持IBMWorkplace产品支持的LDAP服务器。
WorkplaceDesigner的第一个版本包括开始使用所需的一切东西:
产品代码文档和教程示例应用程序及代码预览和测试开发中的应用程序的IBMWorkplaceCollaborationServicesIBMCloudscapeWorkplaceDesigner的特性
WorkplaceDesigner2.5包括以下特性:
在Workplace服务器上组成单个portlet的组件(表单、模式、脚本和图片的集合)。设计元素。这些是WorkplaceDesigner的一部分,允许您可视化地创建和修改组件。创建表单输入信息或者显示不同数据来源信息的表单编辑器。表单是协同系统的关键成分,提供了收集和处理信息的灵活方式。它们是主要的用户界面元素,包含组成应用程序界面的控件。表单用于创建、编辑和显示存储在文档中的数据。UI控件选项板显示了所有可用的UI控件/组件。UI控件是让用户在表单上处理数据的可视化元素。UI控件包括编辑字段、按钮、下拉列表和链接。提供完整的事件编程能力,比如单击按钮或字段事件、文档打开/关闭事件,等等。具有完全的JavaScript接口和内建函数的脚本,包括提供了很多Eclipse脚本编辑器特性的脚本编辑器,如语法彩色显示和提前键入(type-ahead)。针对测试和产品场景的方便的部署选项。上述特性将在本文后面详细介绍。
组件
如前所述,WorkplaceDesigner组件适用于构造portlet的一组表单、脚本和其他元素。(Workplace应用程序包含一个或多个portlet。)可以使用WorkplaceDesigner建立组件,并将这些组件作为portlet部署在Workplace服务器上,然后将它们添加到Workplace应用程序中。随后,这些应用程序将供Web用户使用。既可以“从头”创建新的组件,也可以导入已有的Domino数据库作为构建新组件的起点。并且还可以编写脚本,在组件中关联事件。为此,可以选择一个组件事件,然后为该事件编写脚本。(脚本和事件在本文后面讨论。)
WorkplaceDesigner组件支持Workplace应用程序基于角色的安全模型。将组件部署到应用程序或应用程序模板后,通过将组件映射到Workplace应用程序中特定的角色,可以设置对该组件的访问。比如,如果将模板角色Contributor映射到组件角色Reader,那么对该应用程序具有Contributor访问权限的用户将拥有针对该组件的Reader访问权限。
WorkplaceDesigner提供了一组简单的方法,可以使用这些方法,很方便地将组件部署到Workplace服务器上,在Workplace应用程序中使用这些组件。其中包括在WorkplaceDesigner中创建部署配置文件。有关的更多信息,请参阅WorkplaceDesigner在线帮助。
表单
与Notes/Domino表单类似,WorkplaceDesigner表单是用户与IBMWorkplace组件进行交互的主要界面。表单允许用户和设计人员输入和显示信息。这些表单也可以作为应用程序开发人员制品从WorkplaceBuilder中访问。
表单是WorkplaceDesigner的核心设计元素。在Notes/Domino应用程序开发中,有很多独立的设计元素,包括视图、代理等。WorkplaceDesigner只有一种基本元素,即表单。要创建视图,必须将其嵌入到表单中;要在Workplace中实现Notes/Domino代理的等价功能,则必须将其作为表单的事件,依此类推。此外,Notes/Domino将数据定义为表单设计的一部分。WorkplaceDesigner在单独的模式中定义数据,然后开发人员将UI控件绑定到模式元素。如果在表单设计中没有现成的模式,那么,只要指定UI控件的数据绑定,WorkplaceDesigner便可以为您生成模式。注意,在创建表单之前,必须创建一个组件。
WorkplaceDesigner提供了多种不同的方式新建表单。可以从空白的表单或者从Domino数据库导入表单,也可以复制已有的表单。如果创建新的空白表单,则会提示您输入表单名、说明以及是否要进行以下操作:
与已有的模式关联创建新的模式不使用模式表单编辑器
为了创建、查看和编辑表单,WorkplaceDesigner提供了表单编辑器(图2):
图2.表单编辑器

可以使用这个图形化的编辑器安排UI控件、按钮和图片等这样的物件。这些元素使用UI控件选项板(下一节描述)添加。然后可以将这些组件拖放到表单中。
WorkplaceDesigner允许在不同的级别上执行数据验证。字段级验证和字段类型与允许的值联系在一起。如果验证过程中涉及到多个字段就是文档级验证。根据验证类型的不同,验证可以在提交之前从客户机上执行,也可以在更新后台文档之前从服务上执行。
UI控件
WorkplaceDesigner开发中一个重要的概念是UI控件。这是用户可以交互的图形元素(比如按钮或链接)。WorkplaceDesigner提供了大量的UI控件,可以将它们添加到表单值中。这些控件包括编辑框、列表框、组合框、检查框、无线按钮、链接、计算字段和图片,等等。这些UI控件可以通过UI控件选项板(图3)访问,选项板位于表单编辑器的右上角。
图3.UI控件选项板

可以从选项板中选择UI控件,然后将它们插入到设计的表单中。
视图控件
如前所述,WorkplaceDesigner区别于DominoDesigner的一个方面在于处理视图的方式。视图是可以添加到表单中显示文档集合的UI控件。在WorkplaceDesigner中,视图是通过表单来控制的。要创建视图,则必须将视图控件插入到表单中,然后将单独的字段或查询关联到该视图控件。视图控件提供了一种将视图表示从数据中分离出来、最后再填充数据的方法。在表单中插入视图控件后,可以像其他用户界面控件那样,使用样式或者定制格式化属性来修改控件的格式。
容器控件
容器控件(顾名思义)是可以包含其他UI控件的UI控件。容器控件有三种类型:
面板是表单中可以添加核心控件的矩形区域。面板可以在多个表单之间共享,以确保“观感上”的一致性和节约设计时间。表格包含单独的单元格,可以在单元格中添加控件。视图是表单中的矩形部分,其中的行和列包含根据所定义的查询从XML中提取的数据。事件
任何开发环境中最重要的部分都是事件处理。WorkplaceDesigner支持多种事件控制,其中包括:
UI控件事件。每个UI控件都可以有一组客户端事件。比方说,按钮可以产生“单击”事件。代码既可以在服务器端执行,也可以在客户端执行。组件事件。这是标准的IBMWorkplace事件,比如当文档被初始化或者在Workplace应用程序中添加/删除用户的时候。这些事件是通过一组事件全局属性在组件级别上处理的。表单/文档事件。表单事件支持编辑控件上的事件,如open、close、onSave、postSave,等等。文档事件支持与表单事件相同的事件。脚本
前面已经提到,WorkplaceDesigner包括完整的JavaScript脚本环境,以便开发应用程序,从而能以一种容易理解的语言创建相对复杂的程序。脚本可以在服务器或者客户机上运行。
脚本环境包括存储可重用代码的脚本库。WorkplaceDesigner的JavaScript解释器带有一组预先定义的本地库,公开了所有主要的IBMWorkplaceAPI。(JavaScript解释器还起到Java桥梁的作用,允许直接调用任何JavaAPI。)您也可以创建自己的可重用脚本代码库,或者在组件之间复制/粘贴脚本库。
WorkplaceDesigner的脚本环境还包括脚本编辑器(图4)。
图4.JavaScript编辑器

该编辑器以Eclipse脚本编辑器为基础,包括语法彩色显示、提前键入和JavaScript类浏览等特性。
部署
WorkplaceDesigner提供了便于将创建的组件部署到Workplace服务器上的特性(如图5所示)。
图5.编辑部署配置文件

将组件部署到服务器上之后,可以将它们添加到Workplace应用程序和应用程序模板中。
WorkplaceDesigner其他特性
除了上述特性之外,WorkplaceDesigner还提供了以下特性:
示例应用程序
WorkplaceDesigner提供了完整的示例应用程序,帮助您熟悉IBMWorkplace应用程序开发。此外,IBM还将提供可通过Web免费下载的其他应用程序,然后,您可根据自己的需要调整使用它们。
文档和教程
除了介绍特性和功能的联机帮助文档之外,WorkplaceDesigner还包括以下特性:
Startup文档提供了快速方便的入门介绍。建立IBMWorkplace组件的详细教程。IDE参考描述了该工具本身及其模块。API参考列出了公开的API及其用法和示例代码。结束语
可以看出,WorkplaceDesigner为那些希望为IBMWorkplace平台开发应用程序的任何人提供了很多便利。长期使用Domino的开发人员也可以将现有的技能应用到功能与DominoDesigner类似、但以工业标准技术为基础的环境中。高级程序员可以利用WorkplaceDesigner的可扩展性集成基于Java的工具,不了解Java的新开发人员也可以使用脚本界面创建功能完备的程序。
无论具有什么样的技术背景,WorkplaceDesigner都为您提供了一个易于使用的、功能强大的Workplace应用程序创建工具。要了解有关IBMWorkplaceDesigner的更多信息,请参阅IBMWorkplace资源中心。
来源:互连网