SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
BP113


Zero to Portlet in 20 minutes or less
Paul T. Calhoun | CTO | NNSU




           ®
Your Presenter – This Is Me!
  Paul T. Calhoun
  Chief Technology Officer
  NetNotes Solutions Unlimited
  pcalhoun@nnsu.com
  www.nnsu.com


  I'm a Speaker, Trainer and Consultant who provides customer-
  focused knowledge transfer and consulting to businesses
  worldwide. I currently develop solutions using Domino, Web, Java,
  and XML for customers using Domino, Portlet Factory, WebSphere
  and Eclipse.

  I co-authored the IBM Redbook “XML Powered by Domino,” and
  have developed several online courses for both Application
  Development as well as System Administration. I have spoke at
  technical conferences worldwide and published over a dozen
  articles in leading publications.
Agenda
   Work Smarter Not Harder – The Portlet Factory Demystified
   Zero to Portlet – Don't Blink !!
   The Details – The Nitty Gritty
   References – Places to get more info
   Q&A
Work Smarter Not Harder
   How do you develop applications today ?
      Write
      Compile
      Test
      Repeat (Until the project is finished or the End of Time, whichever comes first)

   How much of your code is re-usable ?
      Can you re-factor that application you wrote for the sales department to be used
       by the HR department ?
       – How quickly ?

   What if there was a tool that allowed you to work SMARTER not
    HARDER ?
      Insert Drum Roll here
Introducing the IBM Portlet Factory



     The IBM Portlet Factory is a Rapid Application Development
     environment that allows for the creation of Web Applications
     and Portlets without having to write any code. These
     applications can then be massively customized to provide
     different user experiences with the use of profiled input.
So What Exactly is the Portlet Factory ?
  Creates WEB APPLICATIONS that can be PORTLET enabled very
   easily

  Designer client that plugs into existing IDE’s
     Rational Application Developer
     Eclipse

  Rapid Application Development Environment
  Zero Code Development
     Portlet Factory generates ALL the code for you
     No, you CAN NOT alter the GENERATED code
     No, to the best of my knowledge, you will never be able to modify the generated
      code

  Allows for the MASSIVE customization of applications via
   PROFILING at runtime
Terminology
 Portlet Factory – The application design environment enabled as a
  plug in to IDE’s like Rational and Eclipse

 Factory Project – Top level container for Portlet Factory elements
  (Models, supporting HTML, XML, CSS files
    A project can contain “N” number of models

 Model – Container for all application functionality represented as an
  XML structure of the complete Web Application
    Models are made up of Builders
Terminology
 Builder – Component that provides specific application functionality
  to the Model

 Profiling – The ability to dynamically alter the Application at runtime
 Profile Sets – Container for the dynamic values that alter the
  Application at runtime

 Profile Entry – Specific profiled builder input
Deployment Architecture
 Applications are deployed as standard JEE WAR files
    To the Web Application Server
       Websphere
          – Application Server (5.x, 6.x)
          – Community Edition (1.1, 2.0)
       Tomcat
    To the Portal Server
       Websphere (6.x)

 All necessary code is deployed with the WAR file
    No additional configuration is required on the WAS/Portal server
Versions
    Latest and Greatest
       6.1
         – Fixpak 1

    Historical
       6.0
        – 6.0.1
        – 6.0.2
        – 6.0.3
       5.x
Historical Note
    IBM acquired “The Factory” from an IBM Business partner by the
     name of BowStreet
    You will still find many of the back end underlying objects use the
     com.bowstreet namespace
Zero to Portlet
    Get Ready...
    Get Set...
    GO !!!!!!

                                 12
                            11        1
                    10                    2
                    9                         3
                        8                 4
                            7         5
                                 6
The Nitty Gritty
    That was really fast !!!!
       Then again, that's the whole point !!

    Let's look at what we did
       IDE
        – Eclipse
       Project
        – Container for all Factory Resources
       Models
        – Container for application specific functionality contributed by builders
       Testing
        – As a web application (WebSphere Application Server or WASCE)
        – As a portlet (WebSphere Portal Server)
Integrated Development Environment
   Rational Developer
      If you already have Rational Installed and use it for all development then this is an
       option
      Less flexible than using Eclipse

   Eclipse (Recommended)
      When installing The Factory, choose the Option “With Eclipse” to install with it's
       own copy of Eclipse
      More flexible
       – Allows for multiple instances of The Factory to be installed on the same
          computer
Projects – A place to put your stuff
    Projects contain all of the resources for a portlet factory application
       Models
       Profile Sets
       Java Source code
       Web Content
         –   HTML
         –   CSS
         –   Graphics
         –   Javascript
         –   XML
         –   XSD – XML Schemas
Projects use Server Deployment Configurations
    When creating your first project you define the Deployment
     Configurations for
       Application Server
       Portal Server

    Servers need to be
     up and running before
     you create the
     deployment
     configuration
Application Server
    Tests your code as a WEB APPLICATION in the defined web browser
    Code is auto-deployed to the defined server
    Can be
       Rational WAS Test Server
       Apache Tomcat
       WAS CE (Recommended)
       WebSphere Application Server
Portal Server
    Tests your code as a PORTLET
    Deployment
       Auto-deployed
        – Code is auto deployed to configured Portal Server
       Create Local WAR (Recommended)
        – Code is written to a local WAR file and deployed via the Portals Admin Console
Models – Where all the fun takes place
    All the application functionality exists in Models
    Functionality is added to models via Builders
    Builders add specific application functionality to a Model
       Actions and Events
       Data Integration
       Formatting and Visibility
       JSP
       Java
       Navigation and Page Actions
       Page Elements
       SQL
       Rich UI – AJAX
       Services
       Variables
Builders are your API
    Models are comprised of “N” number of builders
    Builders are The Factory's API
       Learn these first
         – Use the WIKI's and on-line help
       Like any other language you will use 20% of the builders 80% of the time
The Builder Picker
    As you learn The Factory add the builders you use the most often to
     your favorites
    This will make creating your next model much easier
Accessing Data
    Using the core builders that ship with The Factory you can access
     any JDBC data source
       Must be defined as a JNDI resource on the WAS/PORTAL server
       Project deployment configuration must point to that server in order to read JNDI
        names in builders
       Use the testDataSourceConnection.jsp in the WebContent/factory/util folder
        – This allows you to test the JNDI name prior to accessing it with builders
Using the Service / Consumer Architecture
    Accessing RDBMS data is best done using a Service / Consumer
     architecture
    This separates the access of the data from the display of the data
       The foundation for Service Oriented Architectures (SOA's)

    A single service model can provide data to single or multiple
     consumer models
                                                                      Service
                                                                     Consumer
                                                                      Model




        Service                 Service                Service        Service
        Provider               Consumer                Provider      Consumer
         Model                  Model                   Model         Model




                                                                      Service
                                                                     Consumer
                                                                      Model
Service Model
    Create a Service Model that accesses the data using the following
     builders
       SQL Datasource
        – Connects the factory to the Servers JNDI data source
       SQL Call
        – There will be “N” number of SQL calls
        – One for each unique call type
       Service Definition
        – Exposes this model to service consumer models
        – Allows for implementing a “Test Harness” to test the service operations
       Service Operation
        – Define one service operation for every SQL call
             ●
                 These become the public “callable” interface to the consumer models
Consumer Model
   Create a Consumer Model that calls the “public” methods of the
    Service Model using the following builders
      Service Consumer
       – Expose all of the public methods defined in the Service model or just a sub-set
      Then use the page and data modifier builders to display the results of the public
       methods from the service model
       – View and Form
       – Data Column Modifier
      Portalize the Consumer Model by adding a single additional builder
       – Portlet Adapter
What about Domino ?
   To access a Domino Server from The Factory
      The DIIOP sever task needs to be running
      Enable “Allow HTTP clients to browse databases”
      A generic user id with an internet password
Enable the Domino Builders
    The Domino Builders are enabled via a Feature set either during or
     after project creation
Set the Domino Server access in the properties file
     Copy the default properties file and edit the copy
         Use the FQN of the Domino Server and a service ID with an internet password


     # For SeverName, specify the Domino hostname and port that can be
     # used to fetch the CORBA IOR.
     ServerName=nnsuportal.nnsu.com


     # Username and Password are required for either version.
     UserName=Professor Notes
     Password=password
Use the Domino View and Form builder
    The Domino View and Form builder
       Allows you to access a Domino View
       Allows access to documents with the ability to
         –   Create
         –   Read
         –   Edit
         –   Delete

    Use the same modifiers used when accessing RDBMS data
       Data Column Modifier
       Field Modifier
       Etc.

    Add the Portlet Adapter builder to “Portalize” the application
Testing – Does it Work ?
    A default run configuration called “Active Model” is created during
     the Portlet Factory installation
       This will allow you to run the currently open model from a single run configuration

    Test your application using the Web Server first
    The majority of your functionality testing does NOT require the
     Portal Server
    The only time you need to deploy to the Portal server is when testing
     Portlet specific functionality
       Edit Mode
       Config Mode
       Interactive Portlets (Cooperative Portlets)
Final Thoughts
    The Portlet Factory is A tool, not THE tool
    The more you know about the following the better Factory developer
     you will be
       Java
       XML
       XSD Schemas
       HTML
       CSS
       Javascript

    You can leverage existing code you have
       The Factory generates the majority of the code, that does not mean you will never
        need to write some code

    Finally – Think of what you could do if you had more than 20 min !!!
Wrap up
 Other Portlet Factory Sessions
    AD503 - Using IBM WebSphere Portlet Factory and IBM Rational Application
     Developer for Portlet and Portal Site Development
    AD504 - Best Practices for Creating IBM WebSphere Portal Applications with
     WebSphere Portlet Factory
    AD505 - Dashboards - The "Superhero" of Portal Tools
    AD506 - IBM Dashboard Accelerator -- Build Once, Deploy Anywhere
Resources
 Portlet Factory WIKI
   http://www.lotus.com/ldd/pfwiki.nsf

 Developerworks
   Portlet Factory Zone
      http://www.ibm.com/developerworks/websphere/zones/portal/portletfactory
   Forums
      http://www.ibm.com/developerworks/wikis/display/PortletFactoryID/Portlet
        +Factory+forums+on+developerWorks
   Product Documentation
      http://www.ibm.com/developerworks/websphere/zones/portal/portletfactory/
        proddoc.html
Resources
 Davelan Top Gun Portlet Factory Courses
   http://www.davalen.com/websphereportletfactory.php
   Booth # 713

 The Learning Continuum Corporation
   http://www.tlcc.com
Resources
 Learning Portlet Factory
    Official IBM Curriculum
       WP416 – IBM WebSphere Portlet Factory V6.0.1: Developer Fundamentals
       WP516 – IBM WebSphere Portlet Factory V6.0.1: Advanced Developer Topics
       WP520 – Using IBM WebSphere Dashboard Framework 6
    Familiarize your self with ALL of the builders via the Builder help and WIKI's
    Samples and Tutorials
       Download and review all the samples and tutorials available from the
         Documentation and wiki sites
       Review Sample code added as part of a Feature Set
    Review and participate in the Portlet Factory forums
Q&A
   This is where you get to ask the questions.




                      pcalhoun@nnsu.com
Legal disclaimer
 © IBM Corporation 2008. All Rights Reserv ed.

 The inf ormation contained in this publication is prov ided f or inf ormational purposes only . While ef f orts were made to v erif y the completeness and accuracy of the inf ormation contained in this
 publication, it is prov ided AS IS without warranty of any kind, express or implied. In addition, this inf ormation is based on IBM’s current product plans and strategy , which are subject to change by IBM
 without notice. IBM shall not be responsible f or any damages arising out of the use of , or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to,
 nor shall hav e the ef f ect of , creating any warranties or representations f rom IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement gov erning the use
 of IBM sof tware.
 Ref erences in this presentation to IBM products, programs, or serv ices do not imply that they will be av ailable in all countries in which IBM operates. Product release dates and/or capabilities ref erenced
 in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other f actors, and are not intended to be a commitment to f uture product or f eature av ailability in
 any way . Nothing contained in these materials is intended to, nor shall hav e the ef f ect of , stating or imply ing that any activ ities undertaken by y ou will result in any specif ic sales, rev enue growth or
 other results.


 Perf ormance is based on measurements and projections using standard IBM benchmarks in a controlled env ironment. The actual throughput or perf ormance that any user will experience will v ary
 depending upon many f actors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O conf iguration, the storage conf iguration, and the workload processed.
 Theref ore, no assurance can be giv en that an indiv idual user will achiev e results similar to those stated here.


 All customer examples described are presented as illustrations of how those customers hav e used IBM products and the results they may hav e achiev ed. Actual env ironmental costs and perf ormance
 characteristics may v ary by customer.


 IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International Business Machines Corporation in the United
 States, other countries, or both. Uny te is a trademark of WebDialogs, Inc., in the United States, other countries, or both.




 Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Sy stems Incorporated in the United States, and/or other countries.

 Jav a and all Jav a-based trademarks are trademarks of Sun Microsy stems, Inc. in the United States, other countries, or both.


 Microsof t and Windows are trademarks of Microsof t Corporation in the United States, other countries, or both.


 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.

 UNIX is a registered trademark of The Open Group in the United States and other countries.


 Linux is a registered trademark of Linus Torv alds in the United States, other countries, or both.
 Other company , product, or serv ice names may be trademarks or serv ice marks of others.

Más contenido relacionado

La actualidad más candente

Three WEM Dev Tricks
Three WEM Dev TricksThree WEM Dev Tricks
Three WEM Dev TricksGabriel Walt
 
Summer training java
Summer training javaSummer training java
Summer training javaArshit Rai
 
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
 
Taking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source SoftwareTaking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source SoftwareDavid Currie
 
IBM How to Develop Responsive Applications
IBM How to Develop Responsive ApplicationsIBM How to Develop Responsive Applications
IBM How to Develop Responsive ApplicationsIBM Systems UKI
 
Summer training java
Summer training javaSummer training java
Summer training javaArshit Rai
 
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...David Currie
 
IBM WebSphere Liberty and Docker Deep Dive
IBM WebSphere Liberty and Docker Deep DiveIBM WebSphere Liberty and Docker Deep Dive
IBM WebSphere Liberty and Docker Deep DiveDavid Currie
 
Optimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMOptimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMGabriel Walt
 
Dev ops for cross platform mobile modeveast 12
Dev ops for cross platform mobile   modeveast 12Dev ops for cross platform mobile   modeveast 12
Dev ops for cross platform mobile modeveast 12Sanjeev Sharma
 
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!goodfriday
 
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
 
AD for i in modern world
AD for i in modern worldAD for i in modern world
AD for i in modern worldCOMMON Europe
 
Ejb course in-mumbai
Ejb course in-mumbaiEjb course in-mumbai
Ejb course in-mumbaivibrantuser
 
Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5
Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5
Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5SoftEngine
 
Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...
Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...
Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...David Currie
 
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...rsnarayanan
 
Establishing a service factory
Establishing a service factoryEstablishing a service factory
Establishing a service factorydavemayo
 

La actualidad más candente (20)

Three WEM Dev Tricks
Three WEM Dev TricksThree WEM Dev Tricks
Three WEM Dev Tricks
 
Summer training java
Summer training javaSummer training java
Summer training java
 
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
 
Taking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source SoftwareTaking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source Software
 
IBM How to Develop Responsive Applications
IBM How to Develop Responsive ApplicationsIBM How to Develop Responsive Applications
IBM How to Develop Responsive Applications
 
Summer training java
Summer training javaSummer training java
Summer training java
 
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
 
Drive dam
Drive damDrive dam
Drive dam
 
IBM WebSphere Liberty and Docker Deep Dive
IBM WebSphere Liberty and Docker Deep DiveIBM WebSphere Liberty and Docker Deep Dive
IBM WebSphere Liberty and Docker Deep Dive
 
Optimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMOptimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEM
 
Dev ops for cross platform mobile modeveast 12
Dev ops for cross platform mobile   modeveast 12Dev ops for cross platform mobile   modeveast 12
Dev ops for cross platform mobile modeveast 12
 
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
 
JavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote PresentationJavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote Presentation
 
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...
 
AD for i in modern world
AD for i in modern worldAD for i in modern world
AD for i in modern world
 
Ejb course in-mumbai
Ejb course in-mumbaiEjb course in-mumbai
Ejb course in-mumbai
 
Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5
Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5
Silverlight 4 & Windows Phone 7 at Zup Zip Black Coffee#5
 
Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...
Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...
Microservice Builder: A Microservice DevOps Pipeline for Rapid Delivery and P...
 
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
 
Establishing a service factory
Establishing a service factoryEstablishing a service factory
Establishing a service factory
 

Destacado

Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet FactoryPractical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet FactoryDavalen LLC
 
Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...
Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...
Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...Davalen LLC
 
Bagaimana Memenangi Hati Kawan dan Mempengaruhi Orang Lain
Bagaimana Memenangi Hati Kawan dan Mempengaruhi Orang LainBagaimana Memenangi Hati Kawan dan Mempengaruhi Orang Lain
Bagaimana Memenangi Hati Kawan dan Mempengaruhi Orang LainRazif Zaki
 
Experience and Best Practices from Integrating and Implementing a Intranet Po...
Experience and Best Practices from Integrating and Implementing a Intranet Po...Experience and Best Practices from Integrating and Implementing a Intranet Po...
Experience and Best Practices from Integrating and Implementing a Intranet Po...Davalen LLC
 

Destacado (6)

Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet FactoryPractical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
 
Iu 091 razboiul rece
Iu 091   razboiul receIu 091   razboiul rece
Iu 091 razboiul rece
 
Who is Davalen?
Who is Davalen?Who is Davalen?
Who is Davalen?
 
Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...
Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...
Tips from the Top Chefs: Proven Recipes for Successful Web Experience Factory...
 
Bagaimana Memenangi Hati Kawan dan Mempengaruhi Orang Lain
Bagaimana Memenangi Hati Kawan dan Mempengaruhi Orang LainBagaimana Memenangi Hati Kawan dan Mempengaruhi Orang Lain
Bagaimana Memenangi Hati Kawan dan Mempengaruhi Orang Lain
 
Experience and Best Practices from Integrating and Implementing a Intranet Po...
Experience and Best Practices from Integrating and Implementing a Intranet Po...Experience and Best Practices from Integrating and Implementing a Intranet Po...
Experience and Best Practices from Integrating and Implementing a Intranet Po...
 

Similar a Zero to Portlet in 20 Minutes

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
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
Build Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesBuild Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesWes Yanaga
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Phil Estes
 
Webcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframeWebcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframeRosalind Radcliffe
 
JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.Sebastian Faulhaber
 
RichardChauvetShortResume2015
RichardChauvetShortResume2015RichardChauvetShortResume2015
RichardChauvetShortResume2015Richard Chauvet
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Ido Flatow
 
Ibm 1 Wps Arch
Ibm 1 Wps ArchIbm 1 Wps Arch
Ibm 1 Wps Archluohd
 
Asp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareAsp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareRitwik Das
 
DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryAmazon Web Services
 
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...VMware Tanzu
 
PHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on BluemixPHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on BluemixIBM
 
Cloud Foundry for PHP developers
Cloud Foundry for PHP developersCloud Foundry for PHP developers
Cloud Foundry for PHP developersDaniel Krook
 
Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017
Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017
Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017Amazon Web Services
 
COMPRO- WEB ALBUM & MOTION ANALYZER
COMPRO- WEB ALBUM  & MOTION ANALYZERCOMPRO- WEB ALBUM  & MOTION ANALYZER
COMPRO- WEB ALBUM & MOTION ANALYZERAshish Tanwer
 
Architecting Microservices in .Net
Architecting Microservices in .NetArchitecting Microservices in .Net
Architecting Microservices in .NetRichard Banks
 

Similar a Zero to Portlet in 20 Minutes (20)

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
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
Build Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesBuild Apps Using Dynamic Languages
Build Apps Using Dynamic Languages
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
 
Webcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframeWebcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframe
 
JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.
 
RichardChauvetShortResume2015
RichardChauvetShortResume2015RichardChauvetShortResume2015
RichardChauvetShortResume2015
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6
 
Ibm 1 Wps Arch
Ibm 1 Wps ArchIbm 1 Wps Arch
Ibm 1 Wps Arch
 
Asp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareAsp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech Software
 
DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software Delivery
 
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
 
SunMicroSystems
SunMicroSystemsSunMicroSystems
SunMicroSystems
 
PHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on BluemixPHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on Bluemix
 
Cloud Foundry for PHP developers
Cloud Foundry for PHP developersCloud Foundry for PHP developers
Cloud Foundry for PHP developers
 
Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017
Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017
Dev Ops on AWS - Accelerating Software Delivery - AWS-Summit SG 2017
 
COMPRO- WEB ALBUM & MOTION ANALYZER
COMPRO- WEB ALBUM  & MOTION ANALYZERCOMPRO- WEB ALBUM  & MOTION ANALYZER
COMPRO- WEB ALBUM & MOTION ANALYZER
 
Architecting Microservices in .Net
Architecting Microservices in .NetArchitecting Microservices in .Net
Architecting Microservices in .Net
 
Sunstate
SunstateSunstate
Sunstate
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 

Más de Davalen LLC

Better Business Insight Means Better Business Decisions (11/11/12)
Better Business Insight Means Better Business Decisions (11/11/12)Better Business Insight Means Better Business Decisions (11/11/12)
Better Business Insight Means Better Business Decisions (11/11/12)Davalen LLC
 
Creating an exceptional rich social web and work experience (10-11-2012)
Creating an exceptional rich social web and work experience (10-11-2012)Creating an exceptional rich social web and work experience (10-11-2012)
Creating an exceptional rich social web and work experience (10-11-2012)Davalen LLC
 
How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...
How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...
How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...Davalen LLC
 
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
 
Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...
Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...
Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...Davalen LLC
 
Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...
Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...
Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...Davalen LLC
 
Getting the Most out of Data Page and Rich Data Definition in Portlet Factory
Getting the Most out of Data Page and Rich Data Definition in Portlet FactoryGetting the Most out of Data Page and Rich Data Definition in Portlet Factory
Getting the Most out of Data Page and Rich Data Definition in Portlet FactoryDavalen LLC
 
Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...
Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...
Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...Davalen LLC
 
Accelerate your Lotus Domino Web Applications with Dojo and XPages
Accelerate your Lotus Domino Web Applications with Dojo and XPagesAccelerate your Lotus Domino Web Applications with Dojo and XPages
Accelerate your Lotus Domino Web Applications with Dojo and XPagesDavalen LLC
 
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field Davalen LLC
 
IBM Lotus Notes & Domino: The Road Ahead (2008)
IBM Lotus Notes & Domino: The Road Ahead (2008)IBM Lotus Notes & Domino: The Road Ahead (2008)
IBM Lotus Notes & Domino: The Road Ahead (2008)Davalen LLC
 
What's New in IBM Web Experience Factory
What's New in IBM Web Experience FactoryWhat's New in IBM Web Experience Factory
What's New in IBM Web Experience FactoryDavalen LLC
 

Más de Davalen LLC (12)

Better Business Insight Means Better Business Decisions (11/11/12)
Better Business Insight Means Better Business Decisions (11/11/12)Better Business Insight Means Better Business Decisions (11/11/12)
Better Business Insight Means Better Business Decisions (11/11/12)
 
Creating an exceptional rich social web and work experience (10-11-2012)
Creating an exceptional rich social web and work experience (10-11-2012)Creating an exceptional rich social web and work experience (10-11-2012)
Creating an exceptional rich social web and work experience (10-11-2012)
 
How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...
How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...
How ANICO Brought Subsidiary Systems Together to Communicate with Policyholde...
 
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 ...
 
Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...
Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...
Where Does IBM Web Experience Factory Fit in your Architecture? TECH-D22 from...
 
Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...
Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...
Have your Dojo and eat it too! A Technical Presentations from the 2012 IBM Ex...
 
Getting the Most out of Data Page and Rich Data Definition in Portlet Factory
Getting the Most out of Data Page and Rich Data Definition in Portlet FactoryGetting the Most out of Data Page and Rich Data Definition in Portlet Factory
Getting the Most out of Data Page and Rich Data Definition in Portlet Factory
 
Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...
Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...
Maximizing Relevancy of Search and Product Listing Pages for your Website Cus...
 
Accelerate your Lotus Domino Web Applications with Dojo and XPages
Accelerate your Lotus Domino Web Applications with Dojo and XPagesAccelerate your Lotus Domino Web Applications with Dojo and XPages
Accelerate your Lotus Domino Web Applications with Dojo and XPages
 
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
 
IBM Lotus Notes & Domino: The Road Ahead (2008)
IBM Lotus Notes & Domino: The Road Ahead (2008)IBM Lotus Notes & Domino: The Road Ahead (2008)
IBM Lotus Notes & Domino: The Road Ahead (2008)
 
What's New in IBM Web Experience Factory
What's New in IBM Web Experience FactoryWhat's New in IBM Web Experience Factory
What's New in IBM Web Experience Factory
 

Último

Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 

Último (20)

Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 

Zero to Portlet in 20 Minutes

  • 1.
  • 2. BP113 Zero to Portlet in 20 minutes or less Paul T. Calhoun | CTO | NNSU ®
  • 3. Your Presenter – This Is Me! Paul T. Calhoun Chief Technology Officer NetNotes Solutions Unlimited pcalhoun@nnsu.com www.nnsu.com I'm a Speaker, Trainer and Consultant who provides customer- focused knowledge transfer and consulting to businesses worldwide. I currently develop solutions using Domino, Web, Java, and XML for customers using Domino, Portlet Factory, WebSphere and Eclipse. I co-authored the IBM Redbook “XML Powered by Domino,” and have developed several online courses for both Application Development as well as System Administration. I have spoke at technical conferences worldwide and published over a dozen articles in leading publications.
  • 4. Agenda  Work Smarter Not Harder – The Portlet Factory Demystified  Zero to Portlet – Don't Blink !!  The Details – The Nitty Gritty  References – Places to get more info  Q&A
  • 5. Work Smarter Not Harder  How do you develop applications today ?  Write  Compile  Test  Repeat (Until the project is finished or the End of Time, whichever comes first)  How much of your code is re-usable ?  Can you re-factor that application you wrote for the sales department to be used by the HR department ? – How quickly ?  What if there was a tool that allowed you to work SMARTER not HARDER ?  Insert Drum Roll here
  • 6. Introducing the IBM Portlet Factory The IBM Portlet Factory is a Rapid Application Development environment that allows for the creation of Web Applications and Portlets without having to write any code. These applications can then be massively customized to provide different user experiences with the use of profiled input.
  • 7. So What Exactly is the Portlet Factory ?  Creates WEB APPLICATIONS that can be PORTLET enabled very easily  Designer client that plugs into existing IDE’s  Rational Application Developer  Eclipse  Rapid Application Development Environment  Zero Code Development  Portlet Factory generates ALL the code for you  No, you CAN NOT alter the GENERATED code  No, to the best of my knowledge, you will never be able to modify the generated code  Allows for the MASSIVE customization of applications via PROFILING at runtime
  • 8. Terminology  Portlet Factory – The application design environment enabled as a plug in to IDE’s like Rational and Eclipse  Factory Project – Top level container for Portlet Factory elements (Models, supporting HTML, XML, CSS files  A project can contain “N” number of models  Model – Container for all application functionality represented as an XML structure of the complete Web Application  Models are made up of Builders
  • 9. Terminology  Builder – Component that provides specific application functionality to the Model  Profiling – The ability to dynamically alter the Application at runtime  Profile Sets – Container for the dynamic values that alter the Application at runtime  Profile Entry – Specific profiled builder input
  • 10. Deployment Architecture  Applications are deployed as standard JEE WAR files  To the Web Application Server  Websphere – Application Server (5.x, 6.x) – Community Edition (1.1, 2.0)  Tomcat  To the Portal Server  Websphere (6.x)  All necessary code is deployed with the WAR file  No additional configuration is required on the WAS/Portal server
  • 11. Versions  Latest and Greatest  6.1 – Fixpak 1  Historical  6.0 – 6.0.1 – 6.0.2 – 6.0.3  5.x
  • 12. Historical Note  IBM acquired “The Factory” from an IBM Business partner by the name of BowStreet  You will still find many of the back end underlying objects use the com.bowstreet namespace
  • 13. Zero to Portlet  Get Ready...  Get Set...  GO !!!!!! 12 11 1 10 2 9 3 8 4 7 5 6
  • 14. The Nitty Gritty  That was really fast !!!!  Then again, that's the whole point !!  Let's look at what we did  IDE – Eclipse  Project – Container for all Factory Resources  Models – Container for application specific functionality contributed by builders  Testing – As a web application (WebSphere Application Server or WASCE) – As a portlet (WebSphere Portal Server)
  • 15. Integrated Development Environment  Rational Developer  If you already have Rational Installed and use it for all development then this is an option  Less flexible than using Eclipse  Eclipse (Recommended)  When installing The Factory, choose the Option “With Eclipse” to install with it's own copy of Eclipse  More flexible – Allows for multiple instances of The Factory to be installed on the same computer
  • 16. Projects – A place to put your stuff  Projects contain all of the resources for a portlet factory application  Models  Profile Sets  Java Source code  Web Content – HTML – CSS – Graphics – Javascript – XML – XSD – XML Schemas
  • 17. Projects use Server Deployment Configurations  When creating your first project you define the Deployment Configurations for  Application Server  Portal Server  Servers need to be up and running before you create the deployment configuration
  • 18. Application Server  Tests your code as a WEB APPLICATION in the defined web browser  Code is auto-deployed to the defined server  Can be  Rational WAS Test Server  Apache Tomcat  WAS CE (Recommended)  WebSphere Application Server
  • 19. Portal Server  Tests your code as a PORTLET  Deployment  Auto-deployed – Code is auto deployed to configured Portal Server  Create Local WAR (Recommended) – Code is written to a local WAR file and deployed via the Portals Admin Console
  • 20. Models – Where all the fun takes place  All the application functionality exists in Models  Functionality is added to models via Builders  Builders add specific application functionality to a Model  Actions and Events  Data Integration  Formatting and Visibility  JSP  Java  Navigation and Page Actions  Page Elements  SQL  Rich UI – AJAX  Services  Variables
  • 21. Builders are your API  Models are comprised of “N” number of builders  Builders are The Factory's API  Learn these first – Use the WIKI's and on-line help  Like any other language you will use 20% of the builders 80% of the time
  • 22. The Builder Picker  As you learn The Factory add the builders you use the most often to your favorites  This will make creating your next model much easier
  • 23. Accessing Data  Using the core builders that ship with The Factory you can access any JDBC data source  Must be defined as a JNDI resource on the WAS/PORTAL server  Project deployment configuration must point to that server in order to read JNDI names in builders  Use the testDataSourceConnection.jsp in the WebContent/factory/util folder – This allows you to test the JNDI name prior to accessing it with builders
  • 24. Using the Service / Consumer Architecture  Accessing RDBMS data is best done using a Service / Consumer architecture  This separates the access of the data from the display of the data  The foundation for Service Oriented Architectures (SOA's)  A single service model can provide data to single or multiple consumer models Service Consumer Model Service Service Service Service Provider Consumer Provider Consumer Model Model Model Model Service Consumer Model
  • 25. Service Model  Create a Service Model that accesses the data using the following builders  SQL Datasource – Connects the factory to the Servers JNDI data source  SQL Call – There will be “N” number of SQL calls – One for each unique call type  Service Definition – Exposes this model to service consumer models – Allows for implementing a “Test Harness” to test the service operations  Service Operation – Define one service operation for every SQL call ● These become the public “callable” interface to the consumer models
  • 26. Consumer Model  Create a Consumer Model that calls the “public” methods of the Service Model using the following builders  Service Consumer – Expose all of the public methods defined in the Service model or just a sub-set  Then use the page and data modifier builders to display the results of the public methods from the service model – View and Form – Data Column Modifier  Portalize the Consumer Model by adding a single additional builder – Portlet Adapter
  • 27. What about Domino ?  To access a Domino Server from The Factory  The DIIOP sever task needs to be running  Enable “Allow HTTP clients to browse databases”  A generic user id with an internet password
  • 28. Enable the Domino Builders  The Domino Builders are enabled via a Feature set either during or after project creation
  • 29. Set the Domino Server access in the properties file  Copy the default properties file and edit the copy  Use the FQN of the Domino Server and a service ID with an internet password # For SeverName, specify the Domino hostname and port that can be # used to fetch the CORBA IOR. ServerName=nnsuportal.nnsu.com # Username and Password are required for either version. UserName=Professor Notes Password=password
  • 30. Use the Domino View and Form builder  The Domino View and Form builder  Allows you to access a Domino View  Allows access to documents with the ability to – Create – Read – Edit – Delete  Use the same modifiers used when accessing RDBMS data  Data Column Modifier  Field Modifier  Etc.  Add the Portlet Adapter builder to “Portalize” the application
  • 31. Testing – Does it Work ?  A default run configuration called “Active Model” is created during the Portlet Factory installation  This will allow you to run the currently open model from a single run configuration  Test your application using the Web Server first  The majority of your functionality testing does NOT require the Portal Server  The only time you need to deploy to the Portal server is when testing Portlet specific functionality  Edit Mode  Config Mode  Interactive Portlets (Cooperative Portlets)
  • 32. Final Thoughts  The Portlet Factory is A tool, not THE tool  The more you know about the following the better Factory developer you will be  Java  XML  XSD Schemas  HTML  CSS  Javascript  You can leverage existing code you have  The Factory generates the majority of the code, that does not mean you will never need to write some code  Finally – Think of what you could do if you had more than 20 min !!!
  • 33. Wrap up  Other Portlet Factory Sessions  AD503 - Using IBM WebSphere Portlet Factory and IBM Rational Application Developer for Portlet and Portal Site Development  AD504 - Best Practices for Creating IBM WebSphere Portal Applications with WebSphere Portlet Factory  AD505 - Dashboards - The "Superhero" of Portal Tools  AD506 - IBM Dashboard Accelerator -- Build Once, Deploy Anywhere
  • 34. Resources  Portlet Factory WIKI  http://www.lotus.com/ldd/pfwiki.nsf  Developerworks  Portlet Factory Zone  http://www.ibm.com/developerworks/websphere/zones/portal/portletfactory  Forums  http://www.ibm.com/developerworks/wikis/display/PortletFactoryID/Portlet +Factory+forums+on+developerWorks  Product Documentation  http://www.ibm.com/developerworks/websphere/zones/portal/portletfactory/ proddoc.html
  • 35. Resources  Davelan Top Gun Portlet Factory Courses  http://www.davalen.com/websphereportletfactory.php  Booth # 713  The Learning Continuum Corporation  http://www.tlcc.com
  • 36. Resources  Learning Portlet Factory  Official IBM Curriculum  WP416 – IBM WebSphere Portlet Factory V6.0.1: Developer Fundamentals  WP516 – IBM WebSphere Portlet Factory V6.0.1: Advanced Developer Topics  WP520 – Using IBM WebSphere Dashboard Framework 6  Familiarize your self with ALL of the builders via the Builder help and WIKI's  Samples and Tutorials  Download and review all the samples and tutorials available from the Documentation and wiki sites  Review Sample code added as part of a Feature Set  Review and participate in the Portlet Factory forums
  • 37. Q&A  This is where you get to ask the questions. pcalhoun@nnsu.com
  • 38. Legal disclaimer © IBM Corporation 2008. All Rights Reserv ed. The inf ormation contained in this publication is prov ided f or inf ormational purposes only . While ef f orts were made to v erif y the completeness and accuracy of the inf ormation contained in this publication, it is prov ided AS IS without warranty of any kind, express or implied. In addition, this inf ormation is based on IBM’s current product plans and strategy , which are subject to change by IBM without notice. IBM shall not be responsible f or any damages arising out of the use of , or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall hav e the ef f ect of , creating any warranties or representations f rom IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement gov erning the use of IBM sof tware. Ref erences in this presentation to IBM products, programs, or serv ices do not imply that they will be av ailable in all countries in which IBM operates. Product release dates and/or capabilities ref erenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other f actors, and are not intended to be a commitment to f uture product or f eature av ailability in any way . Nothing contained in these materials is intended to, nor shall hav e the ef f ect of , stating or imply ing that any activ ities undertaken by y ou will result in any specif ic sales, rev enue growth or other results. Perf ormance is based on measurements and projections using standard IBM benchmarks in a controlled env ironment. The actual throughput or perf ormance that any user will experience will v ary depending upon many f actors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O conf iguration, the storage conf iguration, and the workload processed. Theref ore, no assurance can be giv en that an indiv idual user will achiev e results similar to those stated here. All customer examples described are presented as illustrations of how those customers hav e used IBM products and the results they may hav e achiev ed. Actual env ironmental costs and perf ormance characteristics may v ary by customer. IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Uny te is a trademark of WebDialogs, Inc., in the United States, other countries, or both. Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Sy stems Incorporated in the United States, and/or other countries. Jav a and all Jav a-based trademarks are trademarks of Sun Microsy stems, Inc. in the United States, other countries, or both. Microsof t and Windows are trademarks of Microsof t Corporation in the United States, other countries, or both. 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. UNIX is a registered trademark of The Open Group in the United States and other countries. Linux is a registered trademark of Linus Torv alds in the United States, other countries, or both. Other company , product, or serv ice names may be trademarks or serv ice marks of others.