SlideShare uma empresa Scribd logo
1 de 31
Exceptional Web Experiences
IBM Web Experience Factory 101




                        Phillip de Ridder
  Technical Sales Lead | IBM Collaboration
                           Solutions | MEA
                 © 2011 IBM Corporation
Exceptional Web Experiences




                              © 2011 IBM Corporation
Exceptional Web Experiences


What is the IBM Web Experience Factory?

Formerly known as Websphere Portlet Factory.
General purpose rapid application development tool for building web and hybrid
 mobile applications.
Helps developers rapidly produce sophisticated applications that can be deployed
 into multiple execution environments:
         WebSphere Portal
         WebSphere Application Server / Tomcat / WAS CE
         Lotus Notes 8.5.x client / IBM Sametime 8.x client
         IBM Mashup Center
And accessed by multiple devices:
         Smartphones (Android, Iphone, Blackberry etc)
         Tablets
         Browsers




                                                     © 2011 IBM Corporation
Exceptional Web Experiences


 IBM Web Experience Factory

Dramatically simplifies and supercharges the development, deployment, maintenance and
   reuse of multi-channel applications that deliver exceptional web experiences


Key Features:
  Automates and simplifies software creation for rapid
    solution delivery
  Creates highly interactive, rich user interfaces by
    leveraging advanced AJAX techniques and Dojo
    toolkit widgets and controls
  Provides a rich pre-built connector library and
    transformation capabilities (relational DB, Web and
    REST services, SAP, Siebel, PeopleSoft, Lotus
    Domino, Microsoft Excel, WebSphere Process Server,
    CMIS content management systems)
  Includes Dynamic Profiling capability, to create multiple   Supercharges Application Development
    variations from a single source model
  Runs on IBM WebSphere Portal or IBM WebSphere
    Application Server


                                                                        4
Exceptional Web Experiences


   One tool – multiple platforms and devices
                                                             ...and generate
                                                             applications for   Desktop
Use one                                                      multiple client    Browsers
common set of                                                devices
tools,                    Web Experience Factory
techniques,
application
code
(models)...                                                                     Smartphones




                                                                                Tablets




  ...deploy to multiple          WebSphere Portal      WebSphere
  platforms...                                      Application Server


                                                                         5
Exceptional Web Experiences


Technical Overview

Web Experience Factory
    Technology Concepts
       Models
       Builders
       Profiles




                              © 2011 IBM Corporation
Exceptional Web Experiences




Web Experience Factory automation of design patterns
Web Experience Factory features a model-driven
 development approach using builders
Each builder has a wizard-like UI and automates a design
 pattern, generating all the application code and artifacts
Builders are combined in a model and edited using the Web
 Experience Factory graphical Designer IDE


                         Code generation engine   Application

            Model
             Builder 1
             Builder 2
             Etc.


                              Libraries
                              and code
                                                       7
Exceptional Web Experiences


The model builders' technical overview

Start with some bricks




                B r ic k s ~ B u ild e r s th a t im p le m e n t lo w o r h ig h le v e l p a tte r n s

                                                                           © 2011 IBM Corporation
Exceptional Web Experiences


Build an object with those bricks




           C r e a te a m o d e l o r h ig h le v e l im p le m e n ta tio n p a tte r n w ith b u ild e r s
                                                                            © 2011 IBM Corporation
Exceptional Web Experiences


Change the object by changing the configuration

At a low level - you're not redesigning a brick – you're reusing it in a different way.




 R e c o n fig u re a m o d e l b y c h a n g in g th e im p le m e n ta tio n b e h a v io u r o f its c o m p o n e n ts (i.e .
 r e a r ra n g e th e b ric k s )


                                                                              © 2011 IBM Corporation
Exceptional Web Experiences


Automating the building block analogy




                                Factory Automation
                                Engine

                                                                                 Implementation Patterns



Collection of builders




                          Implementation patterns can
                           be automation components
                                 or builders too

                                                        © 2011 IBM Corporation
Exceptional Web Experiences


     Automate Frequently Occurring Development Tasks
            Applications are comprised of features and design patterns.
              1.

                                                   Print, Export to Excel, Email


                                                          Click-To-Action Invocation
                                                                                   2.
                                            Capture features and design patterns as Builders. Developers can easily create Builde


                                                       Master-Detail Table Drill Down



                                                                Calendar Picker




                                                   Multiple SAP BAPI Call Transaction


                                                      Caching




                              3.
ng Builders, companies can retain the intellectual property of their developers + ensure consistency and quality of code.




                                                                                        © 2011 IBM Corporation   12
Exceptional Web Experiences



    Builders

 utomate the creation of code
s based on inputs or parameters specified by users
e any type of software development
 sy to use, wizard-like interfaces                       .
                                                         .
                                                         .
                                                         /**

 ecrease coding errors, and enforce company coding conventions orbuilder call [bc21]
                                                          * Generated by standards
                                                          * Generated Method [_pageDispatcher]

                                                                         */
                                                                        public void _pageDispatcher(WebAppAccess webAppAccess)
                                                                        {
                                                                            com.bowstreet.webapp.JSPSupport.dispatch(webAppAccess);
                                                                        }

                                                                        /**
                                                                         * Generated Method [getFlights_PagingGetImgName]
                                                                         * Generated by builder call [bc21]
                                                                         */
                                                                        public String getFlights_PagingGetImgName(WebAppAccess webAppAccess, String button, String position)
                                                                        {
                                                                          PagingAssistant asst = (PagingAssistant)webAppAccess.getVariables().getObject("getFlights_Paging");
                                                                          String img = button + position;
                                                                          if ((button.equals("First") || button.equals("Prev")) && !asst.hasPreviousPage())
                                                                            img = button + "Disabled";
                                                                          if ((button.equals("Next") || button.equals("Last")) && !asst.hasNextPage())
                                                                            img = button + "Disabled";
                                                                         return webAppAccess.getVariables().getXmlText("getFlights_PagingButtonImages", img);
                                                                        .
                                                                        .
                                                                        }




                                                                                         © 2011 IBM Corporation             13
Exceptional Web Experiences



Extensible Builder Library Automates Top Tasks


Over 150 Portlet Factory Builders
Generate user interfaces
Support SOA
Simplify portal integration
Demonstrate AJAX techniques
Provide Application Integration
Implement REST capabilities
Dojo Framework
Widgets
Mobile Themes/Profiling
IBM WCM enhancements
CMIS integration




                                      © 2011 IBM Corporation   14
Exceptional Web Experiences

   Builders : SOA
vider & consumer paradigm required in an SOA environment. It enables the definition of clean, well defined service interfaces tha



       Key Benefits
       Enables reuse of existing assets across projects
       and departments
       Automates back end connectivity
       Speeds creation of new applications
       Promotes application flexibility



 s that wrap data from any system
s to the leading back end systems with Web Experience Factory integration Builders
vice to drive the display of multiple portlets
r interface Model by plugging in data from different services




                                                                             © 2011 IBM Corporation   15
Exceptional Web Experiences




     Building (mobile) web applications using a service architecture
                          Service (provider)                              Presentation (consumer)            Desktop
                                model                                              model

                                                                Presentation builders
er builders
                                                                Service Consumer
ata Services, Web services, REST services, SAP, Domino, PeopleSoft, Siebel, etc.




                                                 operations and schemas
                                                                View & Form or
ansforms and schemas
                                                                 Data Services UI



                                                    Service Interface
nces to Java classes/libraries
                                                                Data Field Settings
                                                                                                            Smartphone
    DB or other                                                            Builders for mobile UI
   back end data                                                           Data Layout
      source                                                               Mobile UI theme

                                                                          UI customization builders




                                 Mobile List & Detail Service Consumer wizard creates this model
                                                                                   © 2011 IBM Corporation
Exceptional Web Experiences



   Profiles


airs) that are used to dynamically generate customized software
te, and change the applications – without requiring additional coding by developers
plication instances




                                                            © 2011 IBM Corporation   17
Exceptional Web Experiences


  Profiles

Profiles can be used to generate multiple           Profile management tool
applications from a single source Model
During regeneration, values from the selected
profile are used for specified builder inputs
Because the entire application is created by
Builders, and any Builder inputs can be
profiled:
There are no limits on what can be modified
by profile
                                                                              Profiles
Presentation, workflow, logic, services,
etc., can all be varied by profile as much
as you want




                                                Builders




                                                           © 2011 IBM Corporation   18
Exceptional Web Experiences

      Portal-based Customizers
ers to more easily extend the configuration of portlets to business users, including portlet look and fee




         Customizers can easily be displayed in portal Configure , Edit, and Edit Defaults Modes




                                                                     © 2011 IBM Corporation   19
Exceptional Web Experiences


     Profile Selection

election capability enables developers to more easily vary the behavior of an application based cust



        Group membership ( Portal or LDAP )
        User attributes
        Locale
        J2EE role
        Any custom criteria.


    Profile Selection enables the application to vary based on information available at execution time.




                                                                       © 2011 IBM Corporation   20
Exceptional Web Experiences



     Regeneration

  ftware code based upon the inputs passed to the Builders
he process of recalculating a spreadsheet,
 tive design and rapid change
aralleled software flexibility




   When a set of Builders (model) is regenerated using a different set of input parameters (profiles), a differen




                                                                    © 2011 IBM Corporation   21
Exceptional Web Experiences


Putting it all together
                        Profile Sets     Application Instances
    Products     Profiles
                 Sale VP
   Regions    Profiles
              Sale VP Manager
                  Sales
   Roles     Profiles
                    Sales Rep
             Sale VP Manager
                Sales
                  Sales Rep
               Sales Manager
                Sales Rep




                                Regen
                                Engine




  Models




                                             © 2011 IBM Corporation   22
Exceptional Web Experiences



Portlet Factory Components
                                                                         Applications folder
Developer tool – Portlet Factory Designer
Plug-in for Eclipse or Rational Application Developer
                                                                         Factory application

Server component – Automation Engine
Runs as a WAR file on J2EE app server or Portal         Automation components
Server
                                                             Builders
Executed via Servlet or Portlet API
                                                             Models
                                                             Profile Sets             *If necessary                  Request
Note: Core Portlet Factory technology is used by             Traditional code
both the design environment and the server.
         In the runtime, the following pieces                                                         Factory
support dynamic profiling:                                                                            controller
                                                        *If necessary
Regeneration engine
Models, Builders, and Profiling                                                                                      Response

                                                        Generated executables

                                                                 JSP files
                                                                    Java
                                                                   classes




                                                                                © 2011 IBM Corporation          23
Exceptional Web Experiences



Builders and Models

   Model XML file contains a list of calls to Builders
   With all the Builder inputs specified at design time
   Builders generate the entire application
   Each Builder can:
   Introspect the application elements
   Create new elements in application
   Modify any existing elements in application
   Invoke any other Builders in the system
   This makes it easy to make higher and higher level Builders




                                                       © 2011 IBM Corporation   24
Exceptional Web Experiences



Creating Custom Builders

   Extensible architecture makes it easy to create custom Builders
   Simple Java interfaces with clean abstractions
   Wizard-based User Interface is auto-generated from XML
   descriptions in Builder Definition files
   Custom UI can be created using a java “coordinator” class
   Builders can invoke other Builders
   Simply combine Builder calls to easily create powerful high-level
   Builders
   Easily create new Builders from an existing model or Builder




                                                  © 2011 IBM Corporation   25
Exceptional Web Experiences



    Builder Architecture
                                                                                     Builder Definition XML Files

                                  Factory Eclipse Editor                               1. SAP Function Builder Definition files to construct UI for editing bu
                                                                                          WPF uses
                                                                                         Action List
                                                                                         Variable
                                                                                         Imported Page
    Model XML File
    Builder Call 1                                                                       Data Page
     - SAP Function                 Regeneration Engine
    Builder Call 2
     - Imported Page                                3. Builders can introspect, create, and modify any parts of the generated application. They can als
    Builder Call 3
     - Data Page

                                                           Builder Regen Classes
er’s regeneration method is invoked. All the the builder inputs specified by the user in the editor are passed to the builder.
                                                           SAP Function builder
                                                                                                    Generated (Abstract) Application

                                                         Action List builder
                                                                                                           Pages and controls
                                                         Variable builder                                    Variables/Beans
                                                                                                         Schemas and metadata
                                                         Imported Page builder                              Actions & Methods
                                                                                                                    Properties
                                                         Data Page builder




                                                                                           © 2011 IBM Corporation      26
Exceptional Web Experiences



Builder Architecture with Profiling
                              Profiles                           Builder Definition XML Files
                                                                      SAP Function
                                                                      Action List
                          A                                           Variable
                                                                      Imported Page
Model XML File
Builder Call 1                                                        Data Page
 – SAP Function
Builder Call 2          Regeneration Engine
 – Imported Page
Builder Call 3
 – Data Page

                                     Builder Regen Classes
                                         SAP Function builder
                                                                        Profile A Application

                                         Action List builder
                                                                           Pages and controls
                                         Variable builder                    Variables/Beans
                                                                        Schemas and metadata
                                         Imported Page builder
                                                                           Actions & Methods
                                                                                 Properties
                                         Data Page builder




                                                                 © 2011 IBM Corporation   27
Exceptional Web Experiences



Builder Architecture with Profiling
                            Profiles                              Builder Definition XML Files
                                                                       SAP Function
                                                                       Action List
                                   B                                   Variable
                                                                       Imported Page
Model XML File
Builder Call 1                                                         Data Page
 – SAP Function
Builder Call 2          Regeneration Engine
 – Imported Page
Builder Call 3
 – Data Page

                                       Builder Regen Classes
                                          SAP Function builder           Profile B Application

                                          Action List builder
                                                                           Pages and controls
                                          Variable builder                   Variables/Beans
                                                                         Schemas and metadata
                                          Imported Page builder             Actions & Methods
                                                                                  Properties
                                          Data Page builder




                                                                  © 2011 IBM Corporation   28
Exceptional Web Experiences

Factory and Portal Server
                                HTTP Request


                                                                                                       = WPF Components
                                          Portal Server
                                                                                                 = J2EE App Server

                                        Factory Portlet Adapter
                                                                                                  = Application or
                                        Main Factory Dispatcher                                     customer code
        Model XML Files                                                                                = Builder-generated
                                Profile Selection      Factory WebApp                                    objects
                                                          Execution
                                 Regeneration             Controller
         BuilderDef Files
                                Engine & Cache
                                  Builder
           Profile Data              Builder
                                         Builder


                                      Generated WebApp objects,
                                          classes, and JSP’s



                                  Application              Portlet Factory
                                    objects               Support libraries



                                         J2EE Components
                                       (JDBC, EJB, JCA, JMS)




                                Enterprise data sources and web services




                                                                              © 2011 IBM Corporation     29
Exceptional Web Experiences




  Quiz:
                              Questions?
Who am I?


                                      © 2011 IBM Corporation   30
Exceptional Web Experiences




                              © 2011 IBM Corporation   31

Mais conteúdo relacionado

Mais procurados

Portal at the Speed of Light
Portal at the Speed of LightPortal at the Speed of Light
Portal at the Speed of LightProlifics
 
Programr Brief Overview
Programr Brief OverviewProgramr Brief Overview
Programr Brief Overview_programr
 
Creating Mobile Content Using Flash
Creating Mobile Content Using FlashCreating Mobile Content Using Flash
Creating Mobile Content Using Flashpaultrani
 
Eclipse vs Netbean vs Railo
Eclipse vs Netbean vs RailoEclipse vs Netbean vs Railo
Eclipse vs Netbean vs RailoMohd Safian
 
Creating Mobile Websites with Kentico CMS 7
Creating Mobile Websites with Kentico CMS 7Creating Mobile Websites with Kentico CMS 7
Creating Mobile Websites with Kentico CMS 7Thomas Robbins
 
Domino X Pages 8.5
Domino X Pages 8.5Domino X Pages 8.5
Domino X Pages 8.5John Head
 
Client Continuum Dec Fy09
Client Continuum Dec Fy09Client Continuum Dec Fy09
Client Continuum Dec Fy09Martha Rotter
 
Develop multi-screen applications with Flex
Develop multi-screen applications with Flex Develop multi-screen applications with Flex
Develop multi-screen applications with Flex Codemotion
 
Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009
Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009
Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009Ed Brill
 
Part 6 debugging and testing java applications
Part 6 debugging and testing java applicationsPart 6 debugging and testing java applications
Part 6 debugging and testing java applicationstechbed
 
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-finalRohit Kelapure
 
Magic mobile webinar_Jan2013
Magic mobile webinar_Jan2013Magic mobile webinar_Jan2013
Magic mobile webinar_Jan2013Magic Software
 
Adobe AIR Mobile development for Android and PlayBook
Adobe AIR Mobile development for Android and PlayBookAdobe AIR Mobile development for Android and PlayBook
Adobe AIR Mobile development for Android and PlayBookMihai Corlan
 
Developing Applications on iOS
Developing Applications on iOSDeveloping Applications on iOS
Developing Applications on iOSFrancisco Ramos
 
WebSphere User Group UK: Larger Applications with Worklight
WebSphere User Group UK: Larger Applications with WorklightWebSphere User Group UK: Larger Applications with Worklight
WebSphere User Group UK: Larger Applications with WorklightAndrew Ferrier
 
Part 1 workbench basics
Part 1 workbench basicsPart 1 workbench basics
Part 1 workbench basicstechbed
 
VRE - User And Role Management
VRE - User And Role ManagementVRE - User And Role Management
VRE - User And Role ManagementFAO
 
IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...
IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...
IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...John Head
 

Mais procurados (20)

Resume
ResumeResume
Resume
 
Portal at the Speed of Light
Portal at the Speed of LightPortal at the Speed of Light
Portal at the Speed of Light
 
Programr Brief Overview
Programr Brief OverviewProgramr Brief Overview
Programr Brief Overview
 
Creating Mobile Content Using Flash
Creating Mobile Content Using FlashCreating Mobile Content Using Flash
Creating Mobile Content Using Flash
 
Eclipse vs Netbean vs Railo
Eclipse vs Netbean vs RailoEclipse vs Netbean vs Railo
Eclipse vs Netbean vs Railo
 
Creating Mobile Websites with Kentico CMS 7
Creating Mobile Websites with Kentico CMS 7Creating Mobile Websites with Kentico CMS 7
Creating Mobile Websites with Kentico CMS 7
 
Domino X Pages 8.5
Domino X Pages 8.5Domino X Pages 8.5
Domino X Pages 8.5
 
Client Continuum Dec Fy09
Client Continuum Dec Fy09Client Continuum Dec Fy09
Client Continuum Dec Fy09
 
Embarcadero C++Builder XE3 Datasheet
Embarcadero C++Builder XE3 DatasheetEmbarcadero C++Builder XE3 Datasheet
Embarcadero C++Builder XE3 Datasheet
 
Develop multi-screen applications with Flex
Develop multi-screen applications with Flex Develop multi-screen applications with Flex
Develop multi-screen applications with Flex
 
Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009
Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009
Lotusphere 2009: INV102 Lotus Notes And Domino Strategy 2009
 
Part 6 debugging and testing java applications
Part 6 debugging and testing java applicationsPart 6 debugging and testing java applications
Part 6 debugging and testing java applications
 
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
 
Magic mobile webinar_Jan2013
Magic mobile webinar_Jan2013Magic mobile webinar_Jan2013
Magic mobile webinar_Jan2013
 
Adobe AIR Mobile development for Android and PlayBook
Adobe AIR Mobile development for Android and PlayBookAdobe AIR Mobile development for Android and PlayBook
Adobe AIR Mobile development for Android and PlayBook
 
Developing Applications on iOS
Developing Applications on iOSDeveloping Applications on iOS
Developing Applications on iOS
 
WebSphere User Group UK: Larger Applications with Worklight
WebSphere User Group UK: Larger Applications with WorklightWebSphere User Group UK: Larger Applications with Worklight
WebSphere User Group UK: Larger Applications with Worklight
 
Part 1 workbench basics
Part 1 workbench basicsPart 1 workbench basics
Part 1 workbench basics
 
VRE - User And Role Management
VRE - User And Role ManagementVRE - User And Role Management
VRE - User And Role Management
 
IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...
IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...
IBM Lotus Notes/Domino App. Dev. Competitive Advantage: The Social Business E...
 

Semelhante a Portlet factory 101

Ibm web experience factory
Ibm web experience factoryIbm web experience factory
Ibm web experience factoryVirtual Nuggets
 
BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10
BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10
BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10psiborg
 
Zero to Portlet in 20 minutes or less
Zero to Portlet in 20 minutes or lessZero to Portlet in 20 minutes or less
Zero to Portlet in 20 minutes or lessDavalen LLC
 
"BlackBerry Webworks : Apps for The Smartphone and Tablet"
"BlackBerry Webworks : Apps for The Smartphone and Tablet""BlackBerry Webworks : Apps for The Smartphone and Tablet"
"BlackBerry Webworks : Apps for The Smartphone and Tablet"Software Park Thailand
 
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...Prolifics
 
Lab 3) create a web application
Lab 3) create a web applicationLab 3) create a web application
Lab 3) create a web applicationtechbed
 
Best Institute for IBM Web Experience Factory
Best Institute for IBM Web Experience FactoryBest Institute for IBM Web Experience Factory
Best Institute for IBM Web Experience FactoryVirtual Nuggets
 
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...Carl Tyler
 
Mobile Endgeräte sind überall – deshalb das mobile Portal
Mobile Endgeräte sind überall – deshalb das mobile Portal Mobile Endgeräte sind überall – deshalb das mobile Portal
Mobile Endgeräte sind überall – deshalb das mobile Portal IBM Lotus
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT Group
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5Vinayak Tavargeri
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architecturessgleadow
 
IBM - Developing portlets using Script portlet in WP 8001
IBM - Developing portlets using Script portlet in WP 8001IBM - Developing portlets using Script portlet in WP 8001
IBM - Developing portlets using Script portlet in WP 8001Vinayak Tavargeri
 
WebWorks Development for BlackBerry PlayBook and Smartphones
WebWorks Development for BlackBerry PlayBook and SmartphonesWebWorks Development for BlackBerry PlayBook and Smartphones
WebWorks Development for BlackBerry PlayBook and SmartphonesKyle McInnes
 
Worklight mobile v6
Worklight mobile v6 Worklight mobile v6
Worklight mobile v6 GameStop
 
Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...
Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...
Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...Davalen LLC
 

Semelhante a Portlet factory 101 (20)

Ibm web experience factory
Ibm web experience factoryIbm web experience factory
Ibm web experience factory
 
BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10
BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10
BEF2013 - Toronto - Dev Track 2 - Migrating Apps to BlackBerry 10
 
Zero to Portlet in 20 minutes or less
Zero to Portlet in 20 minutes or lessZero to Portlet in 20 minutes or less
Zero to Portlet in 20 minutes or less
 
"BlackBerry Webworks : Apps for The Smartphone and Tablet"
"BlackBerry Webworks : Apps for The Smartphone and Tablet""BlackBerry Webworks : Apps for The Smartphone and Tablet"
"BlackBerry Webworks : Apps for The Smartphone and Tablet"
 
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
 
Lab 3) create a web application
Lab 3) create a web applicationLab 3) create a web application
Lab 3) create a web application
 
BlackBerry WebWorks
BlackBerry WebWorksBlackBerry WebWorks
BlackBerry WebWorks
 
SunMicroSystems
SunMicroSystemsSunMicroSystems
SunMicroSystems
 
Best Institute for IBM Web Experience Factory
Best Institute for IBM Web Experience FactoryBest Institute for IBM Web Experience Factory
Best Institute for IBM Web Experience Factory
 
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
 
Web Sphere Portal
Web Sphere PortalWeb Sphere Portal
Web Sphere Portal
 
Mobile Endgeräte sind überall – deshalb das mobile Portal
Mobile Endgeräte sind überall – deshalb das mobile Portal Mobile Endgeräte sind überall – deshalb das mobile Portal
Mobile Endgeräte sind überall – deshalb das mobile Portal
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
 
Sunstate
SunstateSunstate
Sunstate
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architectures
 
IBM - Developing portlets using Script portlet in WP 8001
IBM - Developing portlets using Script portlet in WP 8001IBM - Developing portlets using Script portlet in WP 8001
IBM - Developing portlets using Script portlet in WP 8001
 
WebWorks Development for BlackBerry PlayBook and Smartphones
WebWorks Development for BlackBerry PlayBook and SmartphonesWebWorks Development for BlackBerry PlayBook and Smartphones
WebWorks Development for BlackBerry PlayBook and Smartphones
 
Worklight mobile v6
Worklight mobile v6 Worklight mobile v6
Worklight mobile v6
 
Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...
Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...
Should I Be Writing My Own Web Experience Factory Builder? TECH-D13 from IBM ...
 

Último

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 

Último (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Portlet factory 101

  • 1. Exceptional Web Experiences IBM Web Experience Factory 101 Phillip de Ridder Technical Sales Lead | IBM Collaboration Solutions | MEA © 2011 IBM Corporation
  • 2. Exceptional Web Experiences © 2011 IBM Corporation
  • 3. Exceptional Web Experiences What is the IBM Web Experience Factory? Formerly known as Websphere Portlet Factory. General purpose rapid application development tool for building web and hybrid mobile applications. Helps developers rapidly produce sophisticated applications that can be deployed into multiple execution environments: WebSphere Portal WebSphere Application Server / Tomcat / WAS CE Lotus Notes 8.5.x client / IBM Sametime 8.x client IBM Mashup Center And accessed by multiple devices: Smartphones (Android, Iphone, Blackberry etc) Tablets Browsers © 2011 IBM Corporation
  • 4. Exceptional Web Experiences IBM Web Experience Factory Dramatically simplifies and supercharges the development, deployment, maintenance and reuse of multi-channel applications that deliver exceptional web experiences Key Features: Automates and simplifies software creation for rapid solution delivery Creates highly interactive, rich user interfaces by leveraging advanced AJAX techniques and Dojo toolkit widgets and controls Provides a rich pre-built connector library and transformation capabilities (relational DB, Web and REST services, SAP, Siebel, PeopleSoft, Lotus Domino, Microsoft Excel, WebSphere Process Server, CMIS content management systems) Includes Dynamic Profiling capability, to create multiple Supercharges Application Development variations from a single source model Runs on IBM WebSphere Portal or IBM WebSphere Application Server 4
  • 5. Exceptional Web Experiences One tool – multiple platforms and devices ...and generate applications for Desktop Use one multiple client Browsers common set of devices tools, Web Experience Factory techniques, application code (models)... Smartphones Tablets ...deploy to multiple WebSphere Portal WebSphere platforms... Application Server 5
  • 6. Exceptional Web Experiences Technical Overview Web Experience Factory Technology Concepts Models Builders Profiles © 2011 IBM Corporation
  • 7. Exceptional Web Experiences Web Experience Factory automation of design patterns Web Experience Factory features a model-driven development approach using builders Each builder has a wizard-like UI and automates a design pattern, generating all the application code and artifacts Builders are combined in a model and edited using the Web Experience Factory graphical Designer IDE Code generation engine Application Model Builder 1 Builder 2 Etc. Libraries and code 7
  • 8. Exceptional Web Experiences The model builders' technical overview Start with some bricks B r ic k s ~ B u ild e r s th a t im p le m e n t lo w o r h ig h le v e l p a tte r n s © 2011 IBM Corporation
  • 9. Exceptional Web Experiences Build an object with those bricks C r e a te a m o d e l o r h ig h le v e l im p le m e n ta tio n p a tte r n w ith b u ild e r s © 2011 IBM Corporation
  • 10. Exceptional Web Experiences Change the object by changing the configuration At a low level - you're not redesigning a brick – you're reusing it in a different way. R e c o n fig u re a m o d e l b y c h a n g in g th e im p le m e n ta tio n b e h a v io u r o f its c o m p o n e n ts (i.e . r e a r ra n g e th e b ric k s ) © 2011 IBM Corporation
  • 11. Exceptional Web Experiences Automating the building block analogy Factory Automation Engine Implementation Patterns Collection of builders Implementation patterns can be automation components or builders too © 2011 IBM Corporation
  • 12. Exceptional Web Experiences Automate Frequently Occurring Development Tasks Applications are comprised of features and design patterns. 1. Print, Export to Excel, Email Click-To-Action Invocation 2. Capture features and design patterns as Builders. Developers can easily create Builde Master-Detail Table Drill Down Calendar Picker Multiple SAP BAPI Call Transaction Caching 3. ng Builders, companies can retain the intellectual property of their developers + ensure consistency and quality of code. © 2011 IBM Corporation 12
  • 13. Exceptional Web Experiences Builders utomate the creation of code s based on inputs or parameters specified by users e any type of software development sy to use, wizard-like interfaces . . . /** ecrease coding errors, and enforce company coding conventions orbuilder call [bc21] * Generated by standards * Generated Method [_pageDispatcher] */ public void _pageDispatcher(WebAppAccess webAppAccess) { com.bowstreet.webapp.JSPSupport.dispatch(webAppAccess); } /** * Generated Method [getFlights_PagingGetImgName] * Generated by builder call [bc21] */ public String getFlights_PagingGetImgName(WebAppAccess webAppAccess, String button, String position) { PagingAssistant asst = (PagingAssistant)webAppAccess.getVariables().getObject("getFlights_Paging"); String img = button + position; if ((button.equals("First") || button.equals("Prev")) && !asst.hasPreviousPage()) img = button + "Disabled"; if ((button.equals("Next") || button.equals("Last")) && !asst.hasNextPage()) img = button + "Disabled"; return webAppAccess.getVariables().getXmlText("getFlights_PagingButtonImages", img); . . } © 2011 IBM Corporation 13
  • 14. Exceptional Web Experiences Extensible Builder Library Automates Top Tasks Over 150 Portlet Factory Builders Generate user interfaces Support SOA Simplify portal integration Demonstrate AJAX techniques Provide Application Integration Implement REST capabilities Dojo Framework Widgets Mobile Themes/Profiling IBM WCM enhancements CMIS integration © 2011 IBM Corporation 14
  • 15. Exceptional Web Experiences Builders : SOA vider & consumer paradigm required in an SOA environment. It enables the definition of clean, well defined service interfaces tha Key Benefits Enables reuse of existing assets across projects and departments Automates back end connectivity Speeds creation of new applications Promotes application flexibility s that wrap data from any system s to the leading back end systems with Web Experience Factory integration Builders vice to drive the display of multiple portlets r interface Model by plugging in data from different services © 2011 IBM Corporation 15
  • 16. Exceptional Web Experiences Building (mobile) web applications using a service architecture Service (provider) Presentation (consumer) Desktop model model Presentation builders er builders Service Consumer ata Services, Web services, REST services, SAP, Domino, PeopleSoft, Siebel, etc. operations and schemas View & Form or ansforms and schemas Data Services UI Service Interface nces to Java classes/libraries Data Field Settings Smartphone DB or other Builders for mobile UI back end data Data Layout source Mobile UI theme UI customization builders Mobile List & Detail Service Consumer wizard creates this model © 2011 IBM Corporation
  • 17. Exceptional Web Experiences Profiles airs) that are used to dynamically generate customized software te, and change the applications – without requiring additional coding by developers plication instances © 2011 IBM Corporation 17
  • 18. Exceptional Web Experiences Profiles Profiles can be used to generate multiple Profile management tool applications from a single source Model During regeneration, values from the selected profile are used for specified builder inputs Because the entire application is created by Builders, and any Builder inputs can be profiled: There are no limits on what can be modified by profile Profiles Presentation, workflow, logic, services, etc., can all be varied by profile as much as you want Builders © 2011 IBM Corporation 18
  • 19. Exceptional Web Experiences Portal-based Customizers ers to more easily extend the configuration of portlets to business users, including portlet look and fee Customizers can easily be displayed in portal Configure , Edit, and Edit Defaults Modes © 2011 IBM Corporation 19
  • 20. Exceptional Web Experiences Profile Selection election capability enables developers to more easily vary the behavior of an application based cust Group membership ( Portal or LDAP ) User attributes Locale J2EE role Any custom criteria. Profile Selection enables the application to vary based on information available at execution time. © 2011 IBM Corporation 20
  • 21. Exceptional Web Experiences Regeneration ftware code based upon the inputs passed to the Builders he process of recalculating a spreadsheet, tive design and rapid change aralleled software flexibility When a set of Builders (model) is regenerated using a different set of input parameters (profiles), a differen © 2011 IBM Corporation 21
  • 22. Exceptional Web Experiences Putting it all together Profile Sets Application Instances Products Profiles Sale VP Regions Profiles Sale VP Manager Sales Roles Profiles Sales Rep Sale VP Manager Sales Sales Rep Sales Manager Sales Rep Regen Engine Models © 2011 IBM Corporation 22
  • 23. Exceptional Web Experiences Portlet Factory Components Applications folder Developer tool – Portlet Factory Designer Plug-in for Eclipse or Rational Application Developer Factory application Server component – Automation Engine Runs as a WAR file on J2EE app server or Portal Automation components Server Builders Executed via Servlet or Portlet API Models Profile Sets *If necessary Request Note: Core Portlet Factory technology is used by Traditional code both the design environment and the server. In the runtime, the following pieces Factory support dynamic profiling: controller *If necessary Regeneration engine Models, Builders, and Profiling Response Generated executables JSP files Java classes © 2011 IBM Corporation 23
  • 24. Exceptional Web Experiences Builders and Models Model XML file contains a list of calls to Builders With all the Builder inputs specified at design time Builders generate the entire application Each Builder can: Introspect the application elements Create new elements in application Modify any existing elements in application Invoke any other Builders in the system This makes it easy to make higher and higher level Builders © 2011 IBM Corporation 24
  • 25. Exceptional Web Experiences Creating Custom Builders Extensible architecture makes it easy to create custom Builders Simple Java interfaces with clean abstractions Wizard-based User Interface is auto-generated from XML descriptions in Builder Definition files Custom UI can be created using a java “coordinator” class Builders can invoke other Builders Simply combine Builder calls to easily create powerful high-level Builders Easily create new Builders from an existing model or Builder © 2011 IBM Corporation 25
  • 26. Exceptional Web Experiences Builder Architecture Builder Definition XML Files Factory Eclipse Editor 1. SAP Function Builder Definition files to construct UI for editing bu WPF uses Action List Variable Imported Page Model XML File Builder Call 1 Data Page - SAP Function Regeneration Engine Builder Call 2 - Imported Page 3. Builders can introspect, create, and modify any parts of the generated application. They can als Builder Call 3 - Data Page Builder Regen Classes er’s regeneration method is invoked. All the the builder inputs specified by the user in the editor are passed to the builder. SAP Function builder Generated (Abstract) Application Action List builder Pages and controls Variable builder Variables/Beans Schemas and metadata Imported Page builder Actions & Methods Properties Data Page builder © 2011 IBM Corporation 26
  • 27. Exceptional Web Experiences Builder Architecture with Profiling Profiles Builder Definition XML Files SAP Function Action List A Variable Imported Page Model XML File Builder Call 1 Data Page – SAP Function Builder Call 2 Regeneration Engine – Imported Page Builder Call 3 – Data Page Builder Regen Classes SAP Function builder Profile A Application Action List builder Pages and controls Variable builder Variables/Beans Schemas and metadata Imported Page builder Actions & Methods Properties Data Page builder © 2011 IBM Corporation 27
  • 28. Exceptional Web Experiences Builder Architecture with Profiling Profiles Builder Definition XML Files SAP Function Action List B Variable Imported Page Model XML File Builder Call 1 Data Page – SAP Function Builder Call 2 Regeneration Engine – Imported Page Builder Call 3 – Data Page Builder Regen Classes SAP Function builder Profile B Application Action List builder Pages and controls Variable builder Variables/Beans Schemas and metadata Imported Page builder Actions & Methods Properties Data Page builder © 2011 IBM Corporation 28
  • 29. Exceptional Web Experiences Factory and Portal Server HTTP Request = WPF Components Portal Server = J2EE App Server Factory Portlet Adapter = Application or Main Factory Dispatcher customer code Model XML Files = Builder-generated Profile Selection Factory WebApp objects Execution Regeneration Controller BuilderDef Files Engine & Cache Builder Profile Data Builder Builder Generated WebApp objects, classes, and JSP’s Application Portlet Factory objects Support libraries J2EE Components (JDBC, EJB, JCA, JMS) Enterprise data sources and web services © 2011 IBM Corporation 29
  • 30. Exceptional Web Experiences Quiz: Questions? Who am I? © 2011 IBM Corporation 30
  • 31. Exceptional Web Experiences © 2011 IBM Corporation 31

Notas do Editor

  1. Automation of your code - With Bowstreet Portlet Factory, developers can create custom automation components (Builders) that encapsulate commonly used design patterns and company-specific business processes. These Builders can then be shared with other developers across the organization, who can easily reuse the functionality without the burden of recreating the same complex code.
  2. SOA, Enterprise App Integration,
  3. Key Benefits Enables reuse of existing assets across projects and departments Automates back end connectivity Speeds creation of new applications Promotes application flexibility Key Features Create data services that wrap data from any system Enable quick access to the leading back end systems with Portlet Factory Integration extensions Utilize one data service to drive the display of multiple portlets Reuse a single user interface Model by plugging in data from different services 1- One benefit is that you can encapsulate your back end data into a set of well defined services that can then be reused across your dashboard project and even across other types of applications within your organization. You may already have your applications exposed as services. If you don’t, you can use a number of different tools to create these services, including the Integration extensions that are part of Portlet Factory. As I mentioned earlier, our integration extensions make application connectivity fast and easy. Using Portlet Factory’s SAP capabilities, for example, you can quickly connect to SAP and expose one or more of their APIs or BAPIs as services. 2. Another benefit of this architecture is that you can speed the creation of new applications and new portlets by reusing data services. For example, you can use the data service called Bookings to drive the display of multiple portlets that display bookings data. Here we are reusing one service to create a portlet with a status gauge of bookings as well as another portlet that shows a table of that same bookings data.<click> 3. The final benefit of this type of architecture is that it promotes application flexibility. You can use reuse the same Portlet User Interface, with different data services. For example, you can easily swap out the data service that drives these portlets, which is a bookings service, with another data service such as opportunities. So, an SOA promotes flexibility by being able to dynamically swap out different services without having to change the user interface.
  4. Speeding development the first time is only half the real power of Portlet Factory, however. Profiles allow new versions of existing portlets, without new development cycles. In the past if you needed an portlet for one group, say an Order Summary portlet for internal sales reps that was very detailed, then determined that pushing that out to distributors on an extranet would increase efficiency even more – but with less detailed order information, you would do one of two things. You would either add conditional logic to the existing portlet, or you would copy, edit and deploy a new portlet. Both are approaches that will work, but in either case, new development cycles are necessary, as well as lengthy testing and deployment cycles. As you’ll see in the demo, Profiles eliminate further lengthy development, test and deployment cycles making it even FASTER to build portlets for subsequent requirements. That’s because developers don’t create new portlets each time a new portlet is required, they simply profile a single instance (essentially, a single code base) then apply profiles that allow it to be called by different portals at run-time for use in different contexts. This Regeneration capability, based on Profiles, significantly eases ongoing maintenance by propagating changes on-demand to all portlet instances. Additionally, Profiles may be exposed through the Portals standard Edit, Configure and administration features – a powerful capability that allows portlets and variations to be created and customized by any delegated administrator and/or user, with no limits. IT and developers are no longer the bottleneck for much of the varied portlets required as the needs of the business evolve.
  5. Another feature included in the Dashboard Framework is the ability to very easily create robust, browser-based configuration wizards that enable non-technical users to dynamically personalize and configure their dashboard portlets –without having to involve IT. End users can change really any aspect of the portlet exposed by IT, which can include the look and feel of the portlet, the functionality, application flow, and even connectivity to the back end system. Basic support for creating these browser-based configuration screens is included as part of WebSphere Portlet Factory, but the framework adds some features that makes this even easier. For example, we include a Table Customizer Builder that makes it very straightforward to customize a table, including features such as the ability to reorder columns, rename columns, change column widths and alignments, add sorting, and so on. With this capability to extend portlet configuration to business users, companies can increase the flexibility of their dashboards and reduce IT maintenance costs
  6. Benefits of Regen Enable iterative design and rapid change Improve customer service and satisfaction Reduce maintenance costs
  7. 1. For each builder call in the model XML, the builder’s class is read from the BuilderDef. Then the builder’s regeneration code is invoked, passing builder inputs saved from design time. 2. From regen class, builders can introspect, create, and modify any parts of the generated application. They can also invoke any other builders.
  8. 1. For each builder call in the model XML, the builder’s class is read from the BuilderDef. Then the builder’s regeneration code is invoked, passing builder inputs saved from design time. 2. From regen class, builders can introspect, create, and modify any parts of the generated application. They can also invoke any other builders.