Portal - Lego set for app
      development
       Bolesław Dawidowicz
About me

•Bolesław Dawidowicz
•Principal Software Engineer
•With RedHat / JBoss since 2006
•Currently GateIn Portal Project Lead
 •(co leading with Julien Viet from eXo)
•Responsible for various stuff related to IDM component
 in the past
Take a different view on
        portal...
Why LEGO?
Many different pieces
Need to choose the
 right set for your
      project
Which one do I need?
Do I need portal?
Which one is Portal?
What is Portal then?
Integration technology
Set of services
Wait?
Wasn’t it about this
  ’portlet’ thing?
Portlet Specification
      JSR 168 & 286
Way to serve many
applications on a single
          page
Portlet Container
   Portal Core Service
Portal LEGO Set



•Portlet Container
Simplest Portal
      vs
 GateIn Portal
      Demo
Interesting concept?
  Also check embedding Pluto
What is simple portal?
         Portlet Container
                 +
  Simple Web app to serve content
Wait? Is Portal just a
web application then?
Yes
with a lot of added
     services
That you don’t need to
 implement yourself ;)
Our LEGO set...
Whats beyond
Portlet Container?
Lets see what pieces are
       in the box
Anatomy of Portal
Portal LEGO Set
• Portlet Container
• Page structure
 • Portal Object Model
• Skins
• Internationalization
• IDM
• Bridges
•
Portal Objects
Portal Objects

• Application Registry
 • Configuration / Properties
• Pages
 • Structure / Management
• Navigation tree
 • Dynamically generated
• Sites
Dynamic navigation
• Dynamic navigation
 • Based on identity, role or
    group membership

 • Located where node &
    page are created

• Configured navigation
 • Nodes can be created
    moved or delated

 • Can link together
    different portal
Skins



• Skins in war files
• Based on CSS
Imagine implementing it
       yourself
For every project...
 again and again
Pretty standard pieces
Giving control
Virtual Sites
• New portals can be
  spawned inside a single
  portal installation

• Can have independent look
  & feel

• Each virtual portal shares
  administration resources

 • Shared portlets
 • Shared administration
    tools

• Delegated security drives
  uniqueness
Dynamically
Templates
Want more?
Import / export
      Demo
SCP content between
     portals !!!
Identity Management
[TBD]
Security / SSO
Security / SSO


•Security on different levels
 •Application / Page / Navigation Node / Site / Portal
• SSO
 •CAS, OpenSSO/OpenAM, JOSSO, Custom SPI Impl
•SPNEGO
Ok, but I don’t really
need this ‘portlet’ thing
Bridges / Containers
OpenSocial

• Apache Shindig onboard
• Consume remote & local
  widgets

• Host widgets for other sites
• Widgets coexist with with
  portlets on pages
Standards...
•JSR 286 (Portlet 2.0 Specification)
 •First delivered in JBoss EPP 4.3
 •Backwards compatible with JSR 168 (Portlet 1.0)
 •Supports a number of improvements
   •Portlet eventing & parameter passing
   •Improved portlet caching
   •Improved AJAX & dynamic rendering

•JSR 301 and JSR 329 (JSF Portlets)
 •Enables rich, secure delivery of JSF into a portal
 •Foundation of the portlet bridge
... and beyond
         • Portlet Bridge
          • Rich Faces
          • JSF
          • JBoss Seam
         • Example portlets
          • Struts
          • Spring portlet
          • Flash Flex
          • GWT Portlet
Web Services for Remote
           Portlets

• Use cases
 • Portal Farms
 • Migration strategies
 • Complex integration
   • (legacy system)
Things you don’t need
to implement yourself
What do I get more?
Clustering
Performance
QA
Want more?
Think LEGO again...
... mix with another set
        of pieces
WCM / ECM
Mashups
Ready to use
applications...
... that you don’t need
     to implement...
... yourself!
Thank You!
Questions?

Portal - Lego set for app development