Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

More Related Content

You Might Also Like

Related Books

Free with a 30 day trial from Scribd

See all

Ajax In Enterprise Portals

  1. 1. Ajax in Enterprise Portals Wesley Hales
  2. 2. Wesley Hales is: • JBoss Portal Lead UI Guy • Author of InfoQ article series: Developing Portlets using JSF, Ajax, and Seam • JBoss Portlet Bridge project lead • JSR-301 Expert Group member
  3. 3. Introductions • Your experience with portals? • What do you want to gain from this session?
  4. 4. Portals & Portlets What is a Portal? • Windows that provide access to web applications and other information. • Works across organizational boundaries to aggregate content coming from various web technologies: JSF, Seam, OpenSocial, Wicket, PHP, Struts...
  5. 5. Portals & Portlets Portlets • Are managed by a portal/portlet container. • Portlet windows are aggregated via a portal page. • A Portlet Application is also a Web Application. The Portlet Application may contain servlets and JSPs in addition to portlets. Portlets, servlets and JSPs may share information through their session.
  6. 6. Portlet Ajax vs. Regular (Servlet) Ajax Pitfalls with 1.0 portlets • portlet URL’s point to the portal, not to the portlet • You cannot make asynchronous calls to portlets through portlet URLs • This results in the replaced markup being all the portal page markup not just the portlet window fragment. How we handle it • Because a portlet is a Web application that can contain other resources, such as servlets and JSP pages, you can make the asynchronous requests to the resources that are bundled with the portlet.
  7. 7. Standard Portlet 1.0 Ajax
  8. 8. Ajax gets better with Portlet 2.0 serveResource and resourceUrls • With the newer (JSR-286) spec, we now have the serveResource() mechanism that makes Ajax easier. • Makes it easy to migrate existing JSR 168 applications • Works with existing client-side libraries • Partial updates to the portlet’s UI
  9. 9. Portlet 2.0 Ajax
  10. 10. View Portlet 2.0 Ajax Demo on YouTube JSR-286 Ajax Demo
  11. 11. Today's Ajax Component Libraries • What libraries are available to portlet developers? • Do I have to use JSF? • It is only framework (currently) with a spec backing it for portlets. • Two of the more popular libraries for JSF are: • IceFaces • Uses custom built bridge • RichFaces • Works with a JSR-301 based bridge
  12. 12. What is a Bridge, and why do we need one? • There are different bridges to handle many different web applications. • Wicket • Seam • Spring MVC • JSF • Struts • PHP • A bridge is often just a portlet written to handle the web application processing and lifecycle.
  13. 13. Portlet Other component libraries, like IceFaces, provide their own quot;bridgequot; or way to handle the portlet and JSF lifecycles.
  14. 14. View IceFaces Component Demo on YouTube IceFaces Portlet Demo
  15. 15. IceFaces Portlet Markup
  16. 16. RichFaces Portlet The RichFaces component library runs under the JBoss Portlet Bridge, an implementation of the JSR-301 specification to support JSF within a portlet.
  17. 17. View RichFaces Component Demo on YouTube RichFaces Portlet Demo
  18. 18. RichFaces Portlet Markup
  19. 19. Portlet Bridge Summary • Standards make life easier when investing in a portlet/Ajax/Component solution • Currently the JBoss Portlet Bridge supports any combination of JSF, Seam, and RichFaces to run inside a portlet. • It is currently in Beta 4 and should be approaching GA sometime in early '09 wen the spec is finalized. • JSR 301 scheduled to be complete early ’09 (168)
  20. 20. Today’s Challenges The Portal is “the glue” that holds all of the portlet windows together. What if each portlet uses it’s own library? • YUI, jQuery, Prototype and yajf... • Conflicts and collisions Solutions? • Namespaced libraries • Today, JBoss Portal limits its usage of Javascript libraries for that specific reason • ideas?
  21. 21. Mashups and OpenSocial Portlets • Who is doing it? • Are there any portlets available that make this easy?
  22. 22. View Quickstart Demo on YouTube QuickStart Portlet Demo
  23. 23. Questions? • IceFaces Portlet Setup Info • JBoss Portlet Bridge • email: