Mr. Raymond Chan, Advisory I/T Specialist, Software … · Advisory I/T Specialist, Software Group,...
Transcript of Mr. Raymond Chan, Advisory I/T Specialist, Software … · Advisory I/T Specialist, Software Group,...
®
The Universal Client for SOA – Lotus Expeditor
Mr. Raymond Chan,
Advisory I/T Specialist, Software Group, IBM China/Hong Kong Limited
Agenda
Understanding movement to Web 2.0
Eclipse Platform
Eclipse-based Web 2.0 applications – Lotus Expeditor
Features of Lotus Expeditor
Demonstration
Additional InformationSystem RequirementsResourcesReference Slides
Understanding movement to Web 2.0
Web 1.0 = Static Web SitesAccess to information
Sites become interactive
Web 2.0 = Sites are socialUsers interact with each otherWeb is a platform
“A true Web 2.0 application is one that gets better the more people use it.” Tim O’Reilly
What is Web 2.0 All About?
Web 2.0 is about connecting people, and making technology efficient for people.
Web 1.0 was about connecting computers and making technology more efficient for computers.
Web 2.0 changes the way businesses interact with customers
Expanding from dozens of markets with millions of people to millions of markets of dozens of people
Task: Create a new application that will live in Web 2.0 world
Users : want their applications to have a rich user interface that maximizes user productivity. This group wants all their applications to behave like Microsoft's Excel or another client-resident application. They want the application to provide them with instantaneous response time. If they have multiple views of the same data (for example, a table and a graph view) and one changes, they want the other view on display to instantaneously reflect that change.
IT: loves the pure server-based delivery model, believes the cost of installing, configuring, and managing client-resident code is too high.
Task: Create a new application that will live in Web 2.0 world
Technologies exist that enable you to deliver a better-than-browser user experience without having to manually install code on client machines. Applications built with these technologies are sometimes referred to as Web 2.0 applications.
Web 2.0 applications provide the best of both worlds: the cost-effective, server-based deployment model combined with rich user experiences that are comparable to most user experiences with client-resident applications.
Agenda
Understanding movement to Web 2.0
Eclipse Platform
Eclipse-based Web 2.0 applications – Lotus Expeditor
Features of Lotus Expeditor
Demonstration
Additional InformationSystem RequirementsResourcesReference Slides
The Eclipse Platform
An IDE framework donated to the Open Source community by IBM
– http://www.eclipse.org
From www.eclipse.org:
– “Eclipse is a kind of universal tool platform
- an open extensible IDE for anything and nothing in particular”
Extensible through plugin architecture
A framework for many software development tools
– Rational Application Developer
– WebSphere Studio tools
– QNX IDE
Eclipse is More Than an IDE . . .
Eclipse can be used to deploy applications
Applications are written as plugins to Eclipse
Offers application management and remote delivery
Agenda
Understanding movement to Web 2.0
Eclipse Platform
Eclipse-based Web 2.0 applications –Lotus Expeditor
Features of Lotus Expeditor
Demonstration
Additional InformationSystem RequirementsResourcesReference Slides
Eclipse-based Web 2.0 applications – Lotus Expeditor
“IBM has announced Lotus Expeditor, a development platform for creating Eclipse-based and Web 2.0 applications. Lotus Expeditor's open standards-based programming model enables enterprises to integrate existing and new applications and deliver them to a variety of connected and disconnected devices.” (http://www.web2journal.com/read/294453.htm)
"With Lotus Expeditor, companies can do business anytime, anywhere by providing software that runs across a variety of hardware choices.“
"Expeditor delivers productivity anytime, anywhere through composite applications. It can reuse existing portal, forms and instant messaging apps to build new user interfaces customized to a function, industry or business project through the use of mobile devices that can access information as well integration from IBM's Forms, Sametime and other workflow products,“ (http://www.eweek.com/article2/0,1895,2049941,00.asp)
Lotus Expeditor - Clients for Desktop and Devices
Windows® Mobile, Nokia Series 60, etc.
Windows® 2000 & XP (Pro, Home, Tablet), Linux®
Common services enable applications to run on desktops and devices
Device
Desktop
Agenda
Understanding movement to Web 2.0
Eclipse Platform
Eclipse-based Web 2.0 applications – Lotus Expeditor
Features of Lotus Expeditor
Demonstration
Additional InformationSystem RequirementsResourcesReference Slides
“Extending SOA beyond the data center to People, Places, and Things”
Web
ResponsiveMobile Managed
Rich
Composition
LotusExpeditor
Lotus Expeditor - Key Capabilities
WebBrowse any existing Web application
RichOptimized user experience exploiting native platform look and feel
CompositionSeamless integration enabling “Composite Applications”
Responsive / MobileFull application support – at the client
ManagedInstall, configure, and maintain both the platform and the applications
Open Standards
Lotus Expeditor: WebEnables Web applications to become part of desktop
Support all full featured Web contentHTML + CSS + DHTML + JavaScriptAjax (JWL, DoJo, Custom, Etc. )Portal / Portlets
Support extensions“Common” Browser Plug-ins (e.g. Flash, PDF, etc.)AppletsActiveX Controls (Win2K, WinXP only)
Integrate Web applications via embedded browserProvides integrated view to browser on desktop
Windows® – Internet ExplorerLinux® – Mozilla
Supports lockdown capabilityURL managementAccess control
Web
ResponsiveMobile Managed
Rich
Composition
Expeditor
When do I use the “Web” capability?Example: Integrate “classic” remote Web applications into the desktop
Lotus Expeditor: RichCompelling user experience across platforms
Platform native look and feel …
Advanced Widgets (“beyond JavaScript & HTML”)Example: Advanced tables and trees
Protection from operating system level changes
Leverage native platform capabilitiesDrag and DropKeyboard integration2D and Vector GraphicsHardware Device Integration
Web
ResponsiveMobile Managed
Rich
Composition
Expeditor
Interaction Services Enable Rich User Experience…on Desktops, Laptops, Tablets, and Kiosks
Eclipse Rich Client Platform (RCP) 3.2.1Standard Widget Toolkit (SWT) - Provides a cross-platform API that is tightly integrated with the underlying operating system GUI for a native look and feelJFace - Extends and interoperates with SWT to provide classes for handling common user interface programming tasks
Dialogs, wizards, and rich text editors define a framework for building complex interactions with the userViewers handle the drudgery of populating, sorting, filtering, and updating widgetsActions and contributions introduce semantics for defining user actions and specifying where to make them available
Draw2DLightweight toolkit of graphical componentsFocuses on efficient painting and layout of figures
Graphical Editor Framework (GEF)Adds editing on top of Draw2DFacilitates the display of any model graphically using Draw2D figuresSupport interactions from mouse, keyboard, or the WorkbenchProvide common components related to the above
Interaction Services Enable Rich User Experience…on Handheld Devices
Eclipse embedded RCP (eRCP) 1.0eSWT (subset of SWT)eJFace (subset of JFace)
Mobile ExtensionsUser inputDevice features
Seamless integration with native desktop
MobileAdjuster
Reference slide “Embedded Rich Client Platform” Reference slide “Mobile Extensions”
Example: Create a “signature” application for a bank teller
When do I use the “Rich” capability?
Lotus Expeditor: CompositionSeamless integration of client applications
Web
ResponsiveMobile Managed
Rich
Composition
Expeditor
Enable “Mashups” across new and pre-existingapplication types
New: Web, Portlet, Forms, Eclipse Rich ClientPre-existing: Swing, AWT, Native, .NET, Flash/FLEX, Text Terminal, Etc.Visual integration of applicationsLocal data integration between applicationsLocal event integration between applicationsCreate new views on existing applications
Enable complete desktop managementOptimize real estateControl overall look and feelCustom brandingConfigurable role-based access
Composite Application Wiring
A “wire” allows components to communicateWired components cooperate but are not required to be tightly coupledLotus Expeditor supports property-to-action wires
To “wire” components:Create a Web Services Description Language (WSDL) file to define actions and propertiesDefine wires between source and target components
Wires can be defined and contributed in two ways:In a Portal Managed environment, define wires by using the Portlet Wiring Tool
Stores wiring information in Composite Application (CA) XML fileLotus Expeditor translates wiring information to Property Broker wiring
In a non-Portal managed environment, define wires by using the Property Broker wire extension point – com.ibm.rcp.propertybroker.PropertyBrokerWire
Interaction Services Provide the Managed Desktop
Integrated desktop application windowApplication launcherHelpPreferencesEmbedded browser viewPortlet viewer
User interface customizationBrandingPersonalitiesCustom widgetsThemes
Rich text editor & spell checker
Lockdown desktop (kiosk mode)
End-to-End live code demo with 2 scenarios:
Contact CenterBank Teller
Partner EnablementEpiphany - Cross-sell/Up-sellDynasty - Financial device supportGenesys - CTI
Coexistence and IntegrationActiveX (Word, Outlook)3270 (IBM Host On-Demand)
Open Financial TellerDemonstrates development of a banking application with Lotus Expeditor
Example: Integrate Call Center and Bank Teller applications with 3rd party services
When do I use the “Composition” Capability?
Lotus Expeditor: Responsive & Mobile
Locally host applications and business logicEnable better responsivenessReduce round trip to server(s)Improve end to end scalability
Enable transparent server interaction when server becomes available
Outgoing - Complete transactions when connectedIncoming - Refresh/Update local content when connected
Enable mobility“Full” disconnection for long periods of time (i.e.: on an airplane)
Reference slide “Lotus Expeditor: Online / Offline Operation”
Web
ResponsiveMobile Managed
Rich
Composition
Expeditor
Support for Offline Operations
Database AccessLocal relational database store
DB2 Everyplace (DB2e) providerCloudscape (aka Derby) providerUse JDBC API for local database access
Synchronize local relational database with Enterprise databasesEnterprise Database Access: DB2 UDB, Informix, Cloudscape (aka Derby), Lotus Domino Server, Oracle, Microsoft® SQL Server, SybaseUse ISync API to control synchronization
MessagingMQ Everyplace (Point-to-Point) – Message queuing, asynchronous messagingMicro Broker (Publish-Subscribe) – Offline messaging supported via Quality of ServiceUse JMS API
Network Awareness (Desktop)Status of local resources (network interface)Connectivity to remote resources (e.g. HTTP servers, Web Services)Enables applications to adapt operation based on connectivity
Example: Extending Web applications to improve performance, enhance scalability, and support mobile end-users
Extending WebSphere Applications to Clients
Example: Extending the Portal to support offline role-based applicationsExtending WebSphere Portal Applications to Clients
Lotus Expeditor: Managed ClientInstall, configure, maintain platform & applications
Enable flexible points of controlOne time setup; subsequent lockdown desktop
Lockdown browser (URL, Access Control, etc.)Lockdown composite applications
Dynamic, self managed by end userDynamic centrally managed via server
Continue to maintain a lockdown user view of the system
Combinations of end user and central server managed
Enable central visibilityApplicationsConfigurationsHistory, Inventory and Status
Enable remote accessAdministrator scheduled jobs on the client
Server(Expeditor, Domino,
Portal Server)
Server Managed Client
Web
ResponsiveMobile Managed
Rich
Composition
Expeditor
Rich Client ApplicationWeb Client Application
Portlet Client Applications
Managed DesktopMenu BarTitle Bar
Launcher
Application Tabs
Status Bar
Default Personality
Splash Screen
Agenda
Understanding movement to Web 2.0
Eclipse Platform
Eclipse-based Web 2.0 applications – Lotus Expeditor
Features of Lotus Expeditor
Demonstration
Additional InformationSystem RequirementsResourcesReference Slides
Demonstration
Sample scenario
In the sample scenario, an insurance agent receives calls from customers who have had automobile accidents, creates claims, andassigns them to an adjuster. The agent can be mobile, working from the office, from home, or from any other place that provides connectivity. The insurance adjuster is mobile and travels around to see the vehicles and assess the damages.
Insurance agent – staff in call center, access the network thrbrowser.
Mobile Adjuster – mobile traveler to assess the damages.
Agenda
Understanding movement to Web 2.0
Eclipse Platform
Eclipse-based Web 2.0 applications – Lotus Expeditor
Features of Lotus Expeditor
Demonstration
Additional InformationSystem RequirementsResourcesReference Slides
Lotus Expeditor 6.1 - Client for Desktop
Microsoft® Windows® XP Professional, service pack 1 or 2
Microsoft® Windows® XP Home Edition, service pack 1 or 2
Microsoft® Windows® 2000, service pack 4
RedHat Enterprise Linux® 4.0 Workstation
Novell Linux® Desktop 9, service pack 2
Minimum hardware requirements:x86 processors capable of running supported client platforms512 MB RAM (more RAM if applications require additional memory) 200 MB free disk space 150 MB disk space for product installation Super video graphics array/adapter (SVGA) 1024 x 768 display
Click here to return to presentation
Lotus Expeditor 6.1 - Client for Devices
Microsoft® Windows® Mobile 2003 SE (PocketPC or Phone Edition)
Microsoft® Windows® Mobile 5.0 (PocketPC or Phone Edition)
Minimum hardware requirements:12 MB of free file system space -> Recommend 16MB12 MB of free memory -> Recommend 16 MB10 MB of free virtual address space -> Recommend 16 MB
Specific units tested:Dell Axim (X50v and X51v) HP iPAQ (2790 and 4700) I-Mate JasJar
A Resource Checker utility is available to evaluate a specific device’s capabilities, including file system space, physical memory, and virtual memory
Click here to return to presentation
Lotus Expeditor 6.1 - Toolkit
Microsoft® Windows® XP Service Pack 2 OR Red Hat Enterprise Linux® 4.0 WS with GIMP Toolkit (GTK) support – Update 3 PLUS one of the following:
Rational® Application Developer (RAD) 7.0 Rational Software Architect (RSA) 7.0 Eclipse 3.2.1 + Web Tools Platform (WTP) 1.5.1 WebSphere Application Server Toolkit (AST) 6.1.1
Minimum hardware requirements:x86 processors capable of supporting Windows® XP/SP2 or Red Hat Linux® EL 4.0 WS with GTK Support - Update 3 512 MB RAM 500 MB free disk space Super video graphics array/adapter (SVGA) 1024 x 768 display
Click here to return to presentation
Lotus Expeditor 6.1 - Server
Microsoft® Windows® 2003 Standard or Enterprise, with or without service pack 1
RedHat Enterprise Linux® Enterprise Server or Advanced Server 4.0 for Intel®, with or without service pack 1, 2, or 3
Prerequisites:IBM DB2 Enterprise 9.1 for Linux®, UNIX®, and Windows® or IBM DB2 Workgroup Server Edition 9.1 for Linux®, UNIX®, and Windows®WebSphere Application Server 6.0.2.11 and higher fix pack levelsIBM HTTP Server 6.0.2.11 and higher fix pack levels This HTTP server is provided with WebSphere Application Server
Minimum hardware requirements:Minimum recommended processor: 2 GHz processor Minimum physical memory: 2 GB
Click here to return to presentation
Resources
Lotus Expeditor Web Site
http://www-142.ibm.com/software/sw-lotus/products/product1.nsf/wdocs/expeditor
Lotus Expeditor Information Centerhttp://publib.boulder.ibm.com/infocenter/ledoc/v6r1/index.jsp
Lotus Expeditor IBM Education Assistanthttp://publib.boulder.ibm.com/infocenter/ieduasst/lotv1r0/index.jsp
Select Lotus Expeditor
Workshops
Redbooks
Samples
Articles
Enterprise Access & Client Technologies WorkshopsLotus Expeditor Foundation - Develop solutions for Desktops and Mobile Clients
Lotus Expeditor for System Administrators – Manage the deployment and operations of the Lotus Expeditor Desktop or Mobile client for end users from a centralized server
Lotus Mobile Connect – Develop secure mobile solutions
Lotus Expeditor for Sametime - Extend Expeditor to include Sametime functions and features
Lotus Expeditor for Devices - Extend Expeditor to portable devices such as PDAs, Cell Phones, and Tablets
Lotus Expeditor for Portal – Extend Expeditor to include portal functions and features
Lotus Expeditor for Forms – Extend Expeditor to include forms functions and features
To register, send email to [email protected]
Self-Paced Workshops for 1Q 2007
NEW Self-Paced workshops starting in February 2007Lotus Expeditor Foundation - February, MarchLotus Expeditor for System Administrators - February, MarchLotus Mobile Connect - February, March
NEW Self-Paced workshops starting in March 2007Lotus Expeditor for Sametime – MarchLotus Expeditor for Devices – MarchLotus Expeditor for Portal – MarchLotus Expeditor for Forms - March
Redbooks
Available today for previous releases:IBM WebSphere Everyplace Deployment V6 Handbook for Developers and Administrators Volume II: Smart Client Application Development http://www.redbooks.ibm.com/redpieces/abstracts/sg247183.html?OpenThe Eclipse embedded Rich Client Platform: A Graphical User Interface for Small Devices http://w3.itso.ibm.com/redpieces/abstracts/redp4118.htmlPatterns: SOA Client - Access Integration Solutions http://www.redbooks.ibm.com/abstracts/sg246775.html?Open
Coming soon for Lotus ExpeditorBuilding Composite Applications (Draft under development)Stay tuned in 2007
Samples: New Desktop Samples
Eclipse Preferences
OSGi Preferences
Simple Portlet including Web Application view
Portlet Viewer view of Portlet
Simple Portlet Aggregation
Rich Text Editor
WAS Web Services
Secured Web Application
Portlet Aggregation
Portlet Intercommunication
RCP Application
Samples: New Device Samples
Mobile adjuster
eSWT sample that shows all the UI widgets
eRCP e-mail workbench sample
Articles on developerWorks
“Creating collaborative components for IBM Lotus Expeditor Property Broker”http://www-128.ibm.com/developerworks/lotus/library/expeditor-property-broker/index.html
“Building and deploying a simple Web Services Resource in IBM Lotus Expeditor”http://www-128.ibm.com/developerworks/lotus/library/expeditor-wsrf/index.html
“Developing an OSGi service as a Web service in IBM Lotus Expeditor”http://www-128.ibm.com/developerworks/lotus/library/expeditor-osgi-services/index.html
Periodically check Lotus Expeditor developerWorks site for new articles and tutorials http://www-128.ibm.com/developerworks/lotus/products/expeditor/
Eclipse (http://www.eclipse.org)
The purpose of Eclipse Foundation is to advance the creation, evolution, promotion, and support of the Eclipse Platform and to cultivate both an open source community and an ecosystem of complementary products, capabilities, and services.
Vendor D
Analyst
Vendor A
Architect
Vendor B
Developer
Vendor C
Tester
Universal Development Platform
Initial focus as an Application Development Platform Formed in 2001 with 8 members80 Major companies by 2003
Not for profit organization formed in 200418 Strategic Partners / 107 Add in Partners / + Academic / + Users
To date: 60,000,000 plus downloads30 Day Download Stats for Eclipse IDE: 340,000 (Feb 2006)
Builds
Enables
Enables
Sup
ports
020406080
100120140
2004 2005 2006
Open Source
Community
UniversalDevelopment
Platform
EcosystemMember
SupportedFoundation
Click here to return to presentation
Eclipse as a Runtime
Runtime components for inclusion in runtimes and applications. It includes Equinox, a component framework and an integrated update mechanism for deploying applications from a central server that exploit the OSGi standards, and RCP, the ability to deploy native GUI applications to a variety of desktop operating systems, such as Windows®, Linux® and Mac OSX.
010203040506070
2005 2006 2007Est
% of Eclipse-based AD Shopsusing RCP as a runtime in their application
(EDC Pub July, 2006)
Per
cent
Usa
ge
Rich Client Platform
Equinox (based on OSGi)
IDE
“Headless”Apps
(e.g. Desktop Web Apps
Or“Local Servers”)
GUIApps
(e.g. DesktopGUI Apps)
Tooling Apps(e.g. IDE)
•IBM Contributions: Equinox (OSGi), RCP, eRCP (Embedded), IDE
•All IBM Managed Client Software built on OSGi/Equinox base
•Enables RCP/eRCP GUI services when neededClick here to return to presentation
Windows® XP Pro Windows® XP Tablet Windows® XP Home Windows® 2000 RedHat RHEL WS 4 Novell Linux® Desktop 9
Java TM Virtual Machine (IBM J9 Technology for jclDesktop or JavaSE 5.0)
Java TM Class Library (jclDesktop, Java TM SE 5.0)OSGi R4
MQTT
MicroBroker
MQeOSGi
Services EMFDB Lifecycle XSD SDO EMF
XML Parsing
JDBCDB2e/Cloudscape
Portlet Container(JSR 168)
Web ServicesSecurity (OASIS)
Web ServicesClient (JSR101) Keystore Accounts
Web ServicesProvider WSRF WSRP JAAS SSO
JMS JNDI TransactionContainer
Web Container
Web ServicesClient (JSR172)
OSGiEvent Admin
PropertyBroker
NetworkAwareness
SyncML
Enterprise Management
Agent
ISync
Sync Manager
ManagedSettings
Eclipse Core Extension Point Framework (Eclipse 3.2.1)
JFace SWT Eclipse UI Extensions Help System Draw2D GEF Provisioning
Workbench UI UI Mobile Extensions Personalities Restricted
Workbench Application Launcher PreferencePages Application Manager
Web ApplicationPerspective
EmbeddedBrowser
Rich Client Perspective Rich Text Editor Spell Check Composite Application
InfrastructurePortlet Viewer
Enterprise / ISV Applications
Expeditor 6.1 Extensions
SupportedClients
Eclipse RCP 3.2.1Desktop
Click here to return to presentationClick here to see Lotus Expeditor extensions for devices
Everyplace Deployment
Windows® Mobile 2003 SE Windows® Mobile 5.0
Java TM Virtual Machine (IBM J9 Technology for jclDevice)
Java TM Class Library (jclDevice)
MicroXMLEmbedded Rich Client Platform Framework
MQTT/MicroBroker
MQe
OSGi R4
eWorkbench UI
JMSJNDI
JDBC (JSR 169)DB2e
Web Services(JSR 172)
SyncMLFramework
OSGiServices
TransactionContainer
Web Container(Servlet/JSP)
EnterpriseMgmt Agent
Provisioning
eJFace eSWT UI Mobile ExtensionsApplication Manager
(eUpdate)
eWorkbench Seamless Application Launcher/Switcher
Enterprise / ISV Applications
Device Expeditor 6.1 Extensions
SupportedClients
Eclipse eRCP 1.0
Click here to return to presentation
© IBM Corporation 2007. All Rights Reserved.The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own
views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.
IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Sametime, WebSphere, Workplace and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both.
Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
UNIX is a registered trademark of The Open Group in the United States and other countries.
Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.
Other company, product, or service names may be trademarks or service marks of others.