AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 ›...
Transcript of AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 ›...
![Page 1: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/1.jpg)
AD105Introduction to Application Development for the IBM Workplace Managed Client
Rama Annavajhala, IBM Workplace Software, IBM Software GroupSesha Baratham, IBM Workplace Software, IBM Software Group
![Page 2: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/2.jpg)
Agenda
§ Goals and Benefits
§ Architectural Overview
§ Application Development§ Eclipse
§ Public Programming Interfaces
§ Application assembly and deployment
§ Tools
§ Integrating external Applications
§ Futures
§ Summary
§ References
§ Q&A
![Page 3: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/3.jpg)
Goal
Rich, Windows-centric applications with connection to network, server resources(e.g. Office, Notes)
Traditional Client/Server Applications
Traditional Browser
Applications
Goal: Rich portal-like applications enhanced with rich user experience
Server-ManagedRich Client
Low
High
Richness of Applicationsand Environment
Basic Rich
Cost ofOwnership
Achieve rich client functionality at low total cost of ownership
![Page 4: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/4.jpg)
§ Goal: Extend Portal value proposition to enable layout & aggregation of rich client applications
§ Combines application user interfaces together into one unified presentation
§ Delivers a highly personalized experience, considering§ User’s job role
§ Security settings
§ Administrators
§ Personal settings
§ Device settings
§ Provides application integration, collaboration, single sign-on services and much more
Goal: Extend Portal Value Proposition to Rich Clients
![Page 5: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/5.jpg)
Key Benefits
§ Extensible client platform§ Collaboration, Document management, Business Applications
§ No Touch Deployment – Low TCO§ Server-managed delivery of rich client
§ Rich user experience§ Desktop integration, native UI and disconnection
§ Built-in Data Management and Security§ Using local and server managed encrypted data stores
§ Disconnection§ Run client applications disconnected from network
§Multi-Platform Client Support§ Linux, Windows
![Page 6: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/6.jpg)
Agenda
§ Goals and Benefits
§ Architectural Overview
§ Application Development§ Eclipse
§ Public Programming Interfaces
§ Application assembly and deployment
§ Tools
§ Integrating external Applications
§ Futures
§ Summary
§ References
§ Q&A
![Page 7: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/7.jpg)
Architectural Overview
Application Adapters
BUSINESS PROCESSES
FRONT-ENDINTEGRATION
BACK-ENDINTEGRATION
Monitoring WorkflowsBusiness Context
& Activities
Collaboration Services
Interaction &Access Services
Managed ClientServices
Rich client
Browser
Mobile Clients
IBM WORKPLACE
INFORMATION
Data & ContentIntegrationSearch & Analysis
The power of one architectural model, one programming model, one
consistent tool set
![Page 8: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/8.jpg)
IBM Workplace Managed Client Architecture
Operating System (Windows, Linux, Mac [future])
Eclipse 3.0 FoundationUser experience framework, windowing, component interaction
Local App Server EJB Container, JRE/JSR’s
Local Data Store(Derby, DB2e)
Provisioning/ Management
(Tivoli & RPCML Agent)
Data Synchronization
& Offline(SyncML4J)
Client
Middlew
are
3rd Party Extensions andPlugins
IBM Value AddedExtensions
Application1
Application2
ApplicationN
![Page 9: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/9.jpg)
Agenda
§ Goals and Benefits
§ Architectural Overview
§ Application Development§ Eclipse
§ Public Programming Interfaces
§ Application Assembly and Deployment
§ Tools
§ Integrating external Applications
§ Futures
§ Summary
§ References
§ Q&A
![Page 10: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/10.jpg)
Application Development Concepts
Java•Views
•Business Logic•Plugins
•Features
Packaging
Developer
Application Integrator
Component Assembly
View
View
View
Page
View
ViewView
Publish
Portal
End User
Portal
Access
ControlControlled deployment
Accesses Portal
![Page 11: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/11.jpg)
JFace
Workbench
SWT
OS
Eclipse Architecture Overview
Platform Runtime
![Page 12: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/12.jpg)
Eclipse Development Concepts
§Plugin§ Component/Object that provides some service
§Feature§ Allows for deployment of a related set of plugins
§Extension Points§ Allows a host plugin to identify functionality that can be extended by
other plugins § E.g. Plugin A creates a context menu § Plugin A specifies an extension point that will allow other
plugins to add to its context menu§ Plugin B uses the extension-point mechanism to add a menu
item to Plugin A’s context menu
![Page 13: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/13.jpg)
Workplace User Interface7LWOH�%DU 0 HQX�%DU 7DEEHG�9LHZ V 6HDUFK�%DU�,QFOXGHV�%DQQHU�* UDSKLFV
$SSOLFDWLRQ�6 Z LWFKHU
$FWLRQ�%DU
1 DYLJDWRU
6 LGH�%DU
6 WDWXV�%DU
![Page 14: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/14.jpg)
Public APIs – User Interface
§Platform UI customization§ A set of extension points, related interfaces and abstract
classes that support the creation of a UI personality, i.e. a distinct customization of the Eclipse Workbench Window
§Default platform UI§ An out of the box personality which can be sub classed if
required by offering products to implement their own custom personality
§Presentation§ A factory for creating UI artifacts that embody the look and
feel of Workplace applications
![Page 15: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/15.jpg)
Public APIs – User Interface
§Widgets§Custom button rendering widget and action bar
§Alerts§A framework for defining, signaling and handling
custom alert (event) types
§Browser § Launch and configuration of an embedded
browser window
![Page 16: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/16.jpg)
Public APIs
§Rich text editor§ DOM based editor which provides HTML and plain text
editing functionality
§ Includes spellchecking capability with pluggable dictionary in 27 languages
§File type registry§ A repository that stores platform-supported file types
§ Can be used by ISVs to extend our existing WMC applications like Documents and Standalone Editors which leverage this registry
![Page 17: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/17.jpg)
Public APIs
§Database§ JDBC access to relational database
§ Support for Derby and DB2 Everyplace
§ Data encryption
§Security§ Manage credentials in local credential store
§ Authenticate over HTTP and IIOP protocol
§ Implement Single Sign On with Operating system
§Managed provisioning§ Allows refreshing the client configuration from server
![Page 18: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/18.jpg)
Public APIs
§Offline§Provides the framework to create offline and
network aware applications
§Synchronization§Provides framework to synchronize data between
client and server
§ Includes iSync client runtime to synchronize DB2e database with DB2 Everyplace sync server
![Page 19: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/19.jpg)
Client (WMC)
Server (WCS)
Disconnected Application Model
PIM UI
CalendarService
MailService
Sync Service
Sync Server
CalendarService
MailService
Database Database
§ Application uses a local database as a cache
§ Application synchronizes local data with remote data when ONLINE
![Page 20: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/20.jpg)
Public APIs - Collaboration
§Live Names§Selectable objects that represent users logged
into IBM Workplace
§Collaborative Application Services§Mail, Calendar and Document library service APIs
§Application, Application Template, Discussion, Web conference
![Page 21: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/21.jpg)
WMC Platform Services - Other
§ Transactional, assured messaging services through MQ Everyplace § provides support for the Java Message Service (JMS)
§ MQ Everyplace is the messaging provider for JMS, and includes support for point-to-point messaging
§Web application support through integrated browser controls and an integrated web application container § Based on the J2EE 1.3 Web Application specification that includes Servlet
2.3 and JSP 1.2 capabilities
§ Web Applications can make use of technologies such as Tag Libraries, Templates, and other standard Web Application features
§Web Services client and hosting capabilities (JSR 172)§ Provides for both client connectivity to server hosted web services and the
hosting of local web services
![Page 22: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/22.jpg)
Application Assembly - Portal Pages
§ Provide layout and features
My Work PageMy Work PageMail FoldersMail Folders
ContactsContacts
DocumentsDocuments Instant MsgInstant Msgcom.ibm.rcp.mail
com.ibm.rcp.common
com.ibm.rcp.folders
com.ibm.rcp.mail
com.ibm.rcp.common
com.ibm.rcp.folders
com.ibm.rcp.contact
com.ibm.rcp.common
com.ibm.rcp.contact
com.ibm.rcp.common
com.ibm.rcp.docs
com.ibm.rcp.common
com.ibm.sodc
com.ibm.rcp.docs
com.ibm.rcp.common
com.ibm.sodc
com.ibm.im
com.ibm.im.names
com.ibm.im
com.ibm.im.names
![Page 23: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/23.jpg)
Application Deployment - Portal Driven Content and Binaries
Portal Server - PagesPortal Server - PagesWeb BrowserWeb Browser
Jo Exec Susan Teller Dan Developer
Lotus NotesLotus Notes
ActivitiesActivities
3270 Emul3270 Emul
ApplicationsApplications
EmailEmail
CalendarCalendar
SametimeSametime
Web Browser
Lotus Notes
Sametime
3270 Emul
Portal Access ControlPortal Access Control
Web Browser
Lotus Notes
Activities
Applications
Sametime
![Page 24: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/24.jpg)
Deploying WMC Applications
§From an IBM Workplace Collaboration Services server§ Supports Server Managed Client capability
§From a CD Image§ Upgrades need to be initiated by end user§ Allows switching to Server Managed Client capability
§From a HTTP server§ Upgrades need to be initiated by end user§ Allows switching to Server Managed Client capability
![Page 25: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/25.jpg)
IBM Workplace Software Development Kit
§Getting started with developing WMC applications § Prerequisites
§ Eclipse Development Experience§ Portal Development – Portlets, Pages, Admin
§ Tools§ Eclipse IDE§ Rational Application Developer (RAD) or Rational Architect§ IBM Workplace Managed Client tooling
![Page 26: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/26.jpg)
IBM Workplace Software Development Kit
§Documents and demonstrates the public programming model supported on WMC platform today
§Contains§ Programmer’s guide
§ Java docs for public APIs
§ Sample code and Demo Application
§ Client side Workplace collaboration services API plug-in
§ IBM Workplace Managed Client tooling
![Page 27: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/27.jpg)
IBM Workplace Managed Client Tool
§Extends Eclipse or RAD IDE to facilitate creation and deployment of WMC Applications
§The tool requires the following components§ Eclipse Modeling framework (EMF) SDK
§ Graphical Editing Framework (GEF) SDK
§ Visual Java Editor (VJE)
§Comes with a variety of samples to help you get started
![Page 28: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/28.jpg)
Live Name Awareness in call Centre sample
![Page 29: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/29.jpg)
Integrating Existing Applications in WMC
§WMC Supports integrating existing (non-WMC) applications within a WMC application for a single coherent user experience§ Swing/AWT
§ Web and Portal applications
§ Notes Applications
§Leverage WMC model and infrastructure for application layout, packaging, assembly, access control and distribution
![Page 30: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/30.jpg)
Integrating Web and Portal Applications in WMC§ Leverage embedded browser to seamlessly integrate web and portal
applications§ Web Services for Remote Portlets (WSRP – Tech. Preview)
Rich Client with WSRP Viewer
Portal
IBM WebSphere Portal
End User + WSRP Consumer WSRP Producer
IBM WSRP Producer
WSRP Web Services
WSRP Web Services
![Page 31: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/31.jpg)
Agenda
§ Goals and Benefits
§ Architectural Overview
§ Application Development§ Eclipse
§ Public Programming Interfaces
§ Application Assembly and Deployment
§ Tools
§ Integrating external Applications
§ Futures
§ Summary
§ References
§ Q&A
![Page 32: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/32.jpg)
Futures
§Portal Projection brought down to the client§ Client side Property Broker§ Policies
§Hannover§ Integration with Lotus Notes and Domino§ UI extensions and skinning
§Composite Applications
§Portal Managed Client
§Signed plug-ins
![Page 33: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/33.jpg)
Summary
§WMC is an extensible, standards-based platform for developing rich, server managed, offline-enabled desktop applications with low TCO
§WMC supports a programming model based on Eclipse and WebSphere Portal§ includes a broad set of public APIs and a toolkit
that enable the development of third party applications that leverage the WMC infrastructure
§Many more capabilities will be available in future releases of WMC
![Page 34: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/34.jpg)
References
Related Sessions§ AD401: IBM Workplace Managed Client Development Best
Practices
§ AD402: Advanced Application Development for IBM Workplace Managed Client
Labs§ Meet the Developers, Dolphin – Asia1 & 2
Other references§ API Toolkit : http://www.lotus.com/ldd/lwpapi§ Red paper Draft
http://w3.itso.ibm.com/redpieces/abstracts/redp4119.html
![Page 35: AD105 Introduction to Application Development for the IBM ...gcc.upb.de › www › wi › wi2 › wi2_lit.nsf › 35ae96bebc983d53... · Introduction to Application Development for](https://reader034.fdocuments.in/reader034/viewer/2022042315/5f03366a7e708231d40817e2/html5/thumbnails/35.jpg)
Q&A