Composite Application Development Tools

IBM provides several tools to help you build composite application components and to aggregate those components into a composite application. These tools include:

  • Lotus Domino Designer WYSIWYG script-based tool for building Lotus Domino applications. Scripting language is LotusScript. (Included in Lotus Notes and Domino 8.)
  • Application Program Interfaces (APIs) For greater flexibility and power, developers can make use of the rich and well-documented APIs of Lotus Notes and Domino 8. These APIs allow you to work directly in languages such as Java, C, or C++. (Included in Lotus Notes and Domino 8.)
  • IBM Workplace Designer WYSIWYG script-based tool for building Workplace applications. Scripting language is JavaScript. Uses data models and paradigms similar to Lotus Domino Designer to allow non-J2EE developers to create J2EE components for use with IBM Workplace and WebSphere Portal products, plus the Lotus Notes rich client. Based on Eclipse 3.0, this tool is integrated with WebSphere Portal, IBM Workplace Collaboration Services, and IBM Workplace Services Express.

For assembling a composite application, developers have two choices:

  • Composite Application Editor A Lotus Notes and Domino 8 rich client feature that allows developers and line-of-business users to assemble components into a composite application and to set up inter-component communication via wires. This feature can be used to build and edit composite applications stored on the Lotus Domino server and to build and edit composite applications plus composite application templates on WebSphere Portal.
  • IBM Application Editor Browser-based feature available in WebSphere Portal and Workplace Collaboration Services. This feature allows developers and line-of-business users to build and modify composite applications and composite application templates. Also provides role-based portlet and page access and permission management functions.

The following section takes a closer look at several of these tools, how they are used, and the skills required to use them.

IBM Lotus Domino Designer

In the Lotus Notes and Domino 8 release, Lotus Domino Designer maintains the familiar user interface but has been enhanced to provide developer support for composite applications. While your current Lotus Notes applications can be used unchanged in composite applications for the Lotus Notes client, you can also use new features of Lotus Domino Designer to enhance your current Lotus Notes applications to take advantage of the component interaction functionality of composite applications.

Component interaction for the specific composite application is defined when the composite application is assembled and wired, but it depends on properties and actions previously defined when the individual components were developed. As Lotus Domino Designer continues as the primary development tool for Lotus Notes and Domino applications, you use Lotus Domino Designer to specify the properties and actions for Lotus Notes components.

In Lotus Notes and Domino 8, Lotus Domino Designer provides new property box options plus new LotusScript classes, methods, and properties to allow the Lotus Notes developer to easily define the properties and actions for a Lotus Notes component.

IBM Workplace Designer

If your background is in Lotus Domino programming, think of Workplace Designer as a tool for providing Lotus Domino Designer-type application development functionality to the IBM Workplace family of products.

In fact, those familiar with Lotus Domino Designer will notice similarities with many IBM Workplace Designer features and concepts. This is not coincidental; Workplace Designer was created with the Lotus Domino Designer in mind. This allows experienced Lotus Domino developers to leverage existing skills to quickly create new applications for IBM Workplace products.

Workplace Designer is a scripting tool based on JavaScript, but because Lotus Domino Designer shares the same views, data connections, and logic, Lotus Domino developers are able to build components for the Workplace family of products using methods with which they are familiar. Figure B.2 illustrates the Lotus Domino Designer-like Workplace Designer user interface.

Figure B.2. User interface of IBM Workplace Designer 2.6[3]

Workplace Designer is based on Eclipse and has many of the features usually associated with Eclipse-based products, including a central page designer surrounded by palettes and navigators. This is a fully functional component development environment, with drag-and-drop support of controls onto the page, and an events editor, with which you can create JavaScript event handlers and specify whether they are to be executed on the client or on the server.

IBM Application Editor Tool

Every WebSphere Portal composite application is derived initially from a composite application template. Composite application templates allow users with proper permissions to create composite applications easily in a self-serve model. A composite application template includes the aggregation of components, pages, page layouts, application roles, role mapping, and points of variability to be applied when a new composite application is created from the template. Composite application templates can also be edited by users with proper permissions.

Figure B.3 illustrates how components are placed on a page through the IBM Application Editor. You use this editor to create or modify a composite application or a composite application template.

Figure B.3. Application Editor feature that is accessed through a Web browser[3]

Application Editor is the tool of choice for the less technical line-of-business user. These folks need to create applications quickly and simply, and they need an application development tool that is intuitive, easy to use, and requires no programming.

For example, assuming they have access rights to the application template, users can modify the template by selecting it. The Application Editor feature then lets the user add, delete, or relocate components on the page.

Under the covers, an application template is a representation of the application in XML and is used to provide an instance of the application. Each WebSphere Portal composite application template has roles that map to the various pages and components. Each composite application instance inherits these initial roles from the template, and these roles can then be assigned to groups or individuals by the application owner, thereby defining the access to the composite application and permissions of the users.

The Application Editor feature also allows you to modify the roles for a composite application instance and the role mapping to pages, components, and other composite application permissions.

IBM Workplace Collaboration Services includes a set of preconfigured application templates targeted at specific business processes, including discussion, document library, chat room, and team project. The templates are managed through a template catalog available on WebSphere Portal. You can modify these templates to suit user requirements, or you can create new templates.

Benefits provided by the Application Editor tool include:

  • Opportunity for cost reduction Costs associated with the development of collaborative applications are typically reduced because applications can be built by a line-of-business user via a browser. Costs can be further reduced by encouraging reuse of existing applications, such as SAP, Siebel, Lotus Notes and Domino, and so on.
  • Speed Time-to-value is reduced by reuse and modification of templates.
  • Standardization Best practices are promoted by encapsulation of known processes and patterns in templates.
  • Self-Service IT costs can be reduced by the self-service administration of applications by the business user.
  • Fast Adoption The learning curve is easier because the tools are similar to those available in WebSphere Portal.

Composite Application Editor

The Composite Application Editor available in Lotus Notes and Domino 8 is a rich client feature that allows you to assemble and edit composite applications. Composite application components can include Lotus Notes databases, portlets from IBM WebSphere Portal, or Eclipse components for rich clients designed using a tool such as IBM Workplace Designer. The integration of information from multiple business components provides application users with content specifically geared to their business roles and tasks.

Figure B.4 illustrates the Composite Application Editor rich client feature used to edit a composite application.

Figure B.4. Composite Application Editor user interface[2]

In this figure, the Composite Application Editor feature has been used to place three components into the composite. The components are selected from the component palette on the right-hand side and placed on the page through drag and drop. You can also modify the properties of the components on the selected page.

Components can be reused in different composite applications for flexible quick starts to projects without reliance on administrator support. A composite application can be hosted on either a Lotus Domino server or on WebSphere Portal. No matter where it resides, you can edit the application using the Composite Application Editor.

WebSphere Portal-based composite applications are listed in the Applications Catalog. Composite application templates reside in the Template Library and, using the Composite Application Editor, you can see the composite applications and application templates that you can access and edit.

Wiring Components Together

Application components interact with each other via wires. Lotus Notes and Domino supports the wiring technology used by WebSphere Portal. Wires provide a means for passing values among the components in a composite application. A single component can have multiple wires attached to it, and components can be wired together in a one-to-one or one-to-many fashion.

The wiring interface allows you to configure connections, or wires, between components at design time. At run time, property broker functionality allows properties to be exchanged automatically using the preconfigured wires. As a result, components on the page can react in an integrated and unified manner to the users actions.

The wiring interface is a visual representation that shows you the existing connections between components in an application. It also shows you the properties from one component that can connect to another component. If a match is available between two components, you can create a wire between the two components.

Using the wiring interface, you can:

  • Create a new wire between components. A wire can link components in a one-to-one or one-to-many relationship.

  • Edit an existing wire.

  • Delete a wire.

Components can also be wired so that they exchange properties across pages in a multi-page composite application.

The Template Library

The Template Library available in WebSphere Portal and Workplace Collaboration Services is where you manage application templates, create a new template, or import a template. You can start to work initially with the Blank Template. Application templates define the properties, page layout, roles, and parameters of composite applications belonging to a particular category. The template also defines the components that are deployed on the pages of an application. From templates, you can create multiple applications that share a common definition and customize them for different teams and communities of users. Available templates are listed in the Application Template Library (see Figure B.5).

Figure B.5. Application Template Library in WebSphere Portal version 6[3]

The Template Library is where you and other users can view all templates that are available for assembling applications along with their locked/unlocked status (a template is locked if another user is editing it). Modifying a template does not alter composite applications that already exist. Template changes affect only the applications that you create after you save template changes.

For each template displayed in the Template Library, you can display its drop-down menu to see the choices available to you for editing it. Your access rights to work with application templates determine which of these actions are available to you. Possible actions include:

  • Edit Template Properties

  • Edit Template Layout

  • Edit Template Parameters

  • Manage Roles

  • Export Template

  • Delete Template

  • Assign Template Permissions

While you edit an application template, the template file is automatically locked so that no one else can make changes to it. The locked status of the application template displays as plain text in the status column for the Application Template Library. You can unlock the template if you are the template owner or an administrator; otherwise, the lock is released when the editing session ends.

The Application Library

The Application Library (see Figure B.6) available in WebSphere Portal and Workplace Collaboration Services is the page where you see the composite application catalog. The application catalog is where you can view and open composite applications and create new ones from application templates. You open an application by clicking its name in the catalog.

Figure B.6. Application Library in WebSphere Portal version 6[3]

If the composite application has been built using the Lotus Notes client and rich client standards, it will be accessible for editing from the WebSphere Portal Catalog using the Lotus Notes FileOpen command.

Three applications are displayed in this figure. In addition, the template on which the application is based, the owner of the application, and the date of the last update to the application are also displayed. You open an application for editing by clicking its name in the leftmost column.

Composite applications on WebSphere Portal and Workplace Collaboration Services are assembled from templates that define the properties, page layout, and roles of each application instance. The membership portlet of a composite application lists the members of the application by their assigned roles, and the components of the application are deployed on one or more application pages. After you open an application, you can customize it and the current application page. Your access rights to work with the application and its pages determine the actions available to you.

In summary, components are the building blocks of a composite application and work in concert to address a business need. Components in a composite application can be portlets from WebSphere Portal, Eclipse components, and Lotus Notes components. All components in an application must reside on a page.

An Introduction to the Lotus Domino Tool Suite

Getting Started with Designer

Navigating the Domino Designer Workspace

Domino Design Elements

An Introduction to Formula Language

An Introduction to LotusScript

Fundamentals of a Notes Application

Calendar Applications

Collaborative Applications

Reference Library Applications

Workflow Applications

Web Applications

Design Enhancements Using LotusScript

Design Enhancements Using Formula Language

View Enhancements

Sample Agents

Miscellaneous Enhancements and Tips for Domino Databases

Data Management


Application Deployment and Maintenance


Appendix A. Online Project Files and Sample Applications

Appendix B. IBM® Lotus® Notes® and Domino®Whats Next?

Lotus Notes Developer's Toolbox(c) Tips for Rapid and Successful Deployment
Lotus Notes Developers Toolbox: Tips for Rapid and Successful Deployment
ISBN: 0132214482
EAN: 2147483647
Year: N/A
Pages: 293
Authors: Mark Elliott © 2008-2020.
If you may any questions please contact us: