AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace...

33
Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications AD303 Stanley Dunne (Architect STSM) Brian O’Gorman (Client tools - Lead Developer)

Transcript of AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace...

Page 1: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

AD303

Stanley Dunne (Architect STSM)

Brian O’Gorman (Client tools - Lead Developer)

Page 2: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Building Composite Applications in WebSphere Portal / IBM Workplace

The session starts with an overview of the workplace composite application model as applied to server and managed client, followed by an exploration of the set of tools used for the assembly and development of these applications for the Workplace platform.

Following the presentation we will have a demonstration of the Workplace Managed Client Tool for Eclipse.

Page 3: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Objectives

After this session, you should … Know what a composite application is.

Understand the set of tools available and when to use those tools.

Understand the principal of the managed client.

Page 4: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Agenda

Composite Application Overview

Server based composite applications

Managed client composite applications

Portal tools for building composite applications

Client tools for building composite applications

Demonstration Building a client composite application.

Page 5: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Composite Application Overview IBM® Workplace™ represents the front end of

computing. IBM Workplace is a family of products, technologies and solutions for creating adaptive work environments that can be customized based on each user’s unique role in the organization.

A composite application is an assembly of components into a custom role based work environment.

Domino app

Enterprise Content

My Team

Discussion Component

Custom forms, workflow

Page 6: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

What are components?

Building blocks of Workplace applications

Encapsulation of a business concept, process, or service mailbox, discussion, trouble ticket, search

Workplace includes many Workplace business components Discussion, Team Calendar, Team Task List, Contact List, Forms, Document Library,

Membership/Roles, Search, People Finder, Pages

A Workplace business component is distinguished from a regular portlet by the fact that it integrates with the Workplace collaborative infrastructure; providing for example lifecycle, membership, roles and template support.

Page 7: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Application Adapters

BUSINESS PROCESSES

FRONT-END

INTEGRATION

BACK-END

INTEGRATION

Monitoring

Workflows

Business Context& Activities

Collaboration Services

Interaction &Access Services

Managed ClientServices

Managed Rich client

Browser

Mobile Clients

IBM WORKPLACE

INFORMATION

Data & Content

Integration

Search & Analysis

IBM WorkplaceThe power of one

architectural model, one programming model, one

consistent tool set

Page 8: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Collaborative Composite Application

A shared space that brings together people, content, and processes projects, planning for events, team access to documents, etc.

Represent an assembly of components that when used together serve a particular business need One or more Pages with components like Team Task List, Team

Calendar, Document Manager, etc.

Application Community Membership grouped by Roles determining access

Moderators, Members, Managers, Employees, etc Roles are mapped to component level access for example reader,

writer.

May be represented by a template Instances of applications may be created based on the template.

E.g. Many Team spaces each with a different membership

Page 9: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Component Interaction

Properties of one component can be wired to actions of another component.

When the value of the property changes in the source component the target component reacts to that change by executing the action.

A wiring facility provides the capability to connect components.

The interactions are managed by a property broker.

Property BrokerWire Registry[]

Source

Employee ID: 123

Name: Stan

AC Code: 111

Employee ID

ChangeIDProperty

Action

Wire

Source

Employee ID: 234

Name: Brian

AC Code: 222

Go

Target

About Stan

Target

About Brian

Page 10: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace Supports a diversity of Clients

Server/Browser

Workplace Managed Client

Mobile

Page 11: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Agenda

Composite Application Overview

Server based composite applications

Managed client composite applications

Portal tools for building composite applications

Client tools for building composite applications

Demonstration Building a client composite application.

Page 12: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Server based composite applications

Accessed using a WEB browser.

Application is an assembly of portlets on one or more portal pages.

An application catalogue provides a list of applications available to the user.

Supports templated collaborative applications. Workplace template editor (aka: Workplace Builder) is available for

assembling new templates or editing application instances.

Supports integration of Domino WEB applications via the Domino Application Portlet.

Page 13: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Agenda

Composite Application Overview

Server based composite applications

Managed client composite applications

Portal tools for building composite applications

Client tools for building composite applications

Demonstration Building a client composite application.

Page 14: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace Managed Client Platform The IBM Workplace Managed Client is a server-managed rich client

platform extends portal like function to desktop computers and mobile computing

environments.

Rich user experiences all the functionality of the native desktop client, coupled with improved

manageability and controlled deployment.

The rich client platform provides client-side security, application integration and powerful user interface capabilities.

A secure replicated repository for client-side data is provided.

Applications are provisioned and updated automatically to user desktops and devices from a provisioning server.

The rich client incorporates Lotus Notes plug-in technology for integrating existing, unmodified, Notes applications, and a web browser plug-in for integrating web applications and portlets.

Page 15: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM’s : Collaboration ServicesUnifying people, tools and resources to simplify day-to-day business

Dynamically integrated services ...

Activity Explorer

People finder

Presence awareness and IM

Teamspaces

Templates & Forms

Virtual meetings

Document management

Editors and viewers

Threaded discussions

eMail

Calendar and schedule

Workflow

Learning

Built on the Workplace Managed Client Platform

Page 16: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Managed client composite applications

Managed client platform built on Eclipse technology.

Components UI is represented by Eclipse Views.

Application is an assembly of portlets on one or more pages. Portlets provide the client with the information about the component

via an xml markup.

Page layout details and the components runtime Java binary files “.jar” are provisioned from the server.

Page 17: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Extending Composite Applications to Desktop and Mobile

Model

Web or Portal Server

Data Synchronization

XML

Server

Data

Client Side

Components

Local Data

Client RuntimeLogin and

Request

XML based model sends description of composite application to the client platform

Provisioning application binaries

Update Site

RenderXML Cache

Server

Client

Page 18: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Agenda

Composite Application Overview

Server based composite applications

Managed client composite applications

Portal tools for building composite applications

Client tools for building composite applications

Demonstration Building a client composite application.

Page 19: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

What it takes to create a composite application!

•Portlets

•Client Views

•Business Logic

•Plugins

•Features

•PortletsDevelop Components

Assemble

Application

C

C

C

Pages / Wiring

C

CC

Server

End User

Role Based

Access

Control

Controlled Provisioning

Accesses Server

•Applications

Page 20: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Workplace Template EditorA tool for application Assembly

Used by non-technical users and others doing simple customization with the browser; no programming is required.

Edit an Application or a Template.

Applications may be saved as a template

Supports Form templates allowing for the creation of simple view form components.

Template Application

Modify Template

Modify ApplicationWorkplace

Builder

Save as a template

Page 21: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Workplace Template Editor Capabilities

Create pages

Add components to pages

Create and map application roles to components.

Configuration of template parameters

Page 22: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Form Template Editor

Provides an easy to use, web-based solution for self-service form creation

Forms, Views

Automatic data storage in the Workplace Document library.

Page 23: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace Designer A tool for component creation

A powerful, easy to use tool for the visual, script developer building components for IBM Workplace environment

Forms, views, data, and JavaScript

Create document-oriented business process components, using a flexible XML-based document model.

Built on the Workplace Client Technology

Get the job done quickly and efficiently

Leverages existing skills, esp. for Domino developers

Page 24: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace DesignerThe fastest way to build components for the IBM Workplace environment.

Forms

Lists

UI Controls

XML storage in a relational db

Schema Editor

JavaScript Editor

Document API JavaScript and

Java.

Property Broker

Page 25: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Portal Support in Rational Application DeveloperTools for Java Developers Create new Portal projects

Import and Export existing portals

Create / edit skins and themes Based on existing theme and skins

Create new Portlets JSR 168 or Struts based

Using JSF standard

Page 26: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Rational Application Developer Visual Development of Portlet UI

Page 27: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Agenda

Composite Application Overview

Server based composite applications

Managed client composite applications

Portal tools for building composite applications

Client tools for building composite applications

Demonstration Building a client composite application.

Page 28: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace DesignerThe fastest way to build components for the IBM Workplace environment.

In a future Workplace release…

Components built with Designer will run on both the Browser and the Workplace managed Client.

Page 29: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace SDK

Enables developers to build collaborative IBM Workplace applications and integrate with the IBM Workplace application infrastructure Use with Eclipse, Rational, etc. to extend platform

Lotus Workplace SDK includes API for the following: Component Services API (e.g., send mail, start chat, schedule meeting) Workplace Client APIs (e.g., provisioning, security, synchronization) Application Infrastructure Services API (e.g., create new app instance) Collaborative Application Component Interfaces (e.g., Lifecycle, Membership) Workplace Mail and Instant Messaging SPIs Workplace JSP tags (Person tag, Awareness) Documentation and samples for all of the above

Documentation and samples

Tools

Available for download from developerWorkshttp://www.lotus.com/ldd/lwpapi

Page 30: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace Managed Client Tool for Eclipse

Designed for Java developers.

Runs on the Eclipse or Rational Application Developer “RAD” IDE.

Appeal to application developers new to client technology Does not require extensive knowledge of Workplace or Portal Server

Eclipse plugin development experience a big advantage

Ease of use a high priority Kick start to client application development

Have an simple application running with ~10 mouse clicks and no Java to write

Visual editing of user interface

Positioning Used with the Workplace SDK to build full featured client applications.

Is available in Workplace SDK 2.6

http://www.lotus.com/ldd/lwpapi

Page 31: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

IBM Workplace Managed Client Tool for EclipseKey Features

Visually Assemble composite applications for the Workplace managed Client.

Easily Integrate Notes applications leveraging client plugin

Visually Build User Interfaces for new Components Uses Eclipse Visual Editor for SWT (the Standard Widget Toolkit).

Debug and Test run Applications Run or debug your application before deploying to server

Manage deployment on the server Export or deploy directly

Page 32: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Agenda

Composite Application Overview

Server based composite applications

Managed client composite applications

Portal tools for building composite applications

Client tools for building composite applications

IBM Workplace SDK

Demonstration Building a client composite application.

Page 33: AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications

Q&A

?