You are previewing JBoss Portal Server Development.
O'Reilly logo
JBoss Portal Server Development

Book Description

Create dynamic,feature-rich, and robust enterprise portal applications

  • Complete guide with examples for building enterprise portal applications using the free, open-source standards-based JBoss portal server

  • Quickly build portal applications such as B2B web sites or corporate intranets

  • Practical approach to understanding concepts such as personalization, single sign-on, integration with web technologies, and content management

In Detail

Enterprises need more than just basic services; they need value-creating entities, which are crucial for running a successful business. Portals offer tremendous value to enterprises, and JBoss Portal Server is a popular, feature-rich open-source server that provides a standards-compliant platform to host functionality that serves the diverse portal needs of an enterprise. Its primary strength lies in its ability to provide robust support for custom implementation of functionality using the JSR-168 portlet API.

This book is a practical guide for installing, configuring and building feature-rich portal applications using the latest JBoss Portal Server 2.7.0. It explains, with examples, how portals can be easily developed, personalized, secured and integrated with other external enterprise assets..

The book will equip you with everything you need to know about JBoss Portal Server to build a fully functional portal. Using it, you can quickly come up to speed with the features offered by the portal server and can start using it almost immediately to develop enterprise portal solutions such as corporate intranets, B2B, or B2C sites. The book will help you to quickly understand and build enterprise portals with rich features such as personalization, AJAX, single sign-on, Google widget integration, remote portlet integration, content management and more. Along with feature implementation, the book also provides enough details for developers to tune and customize the portal environment to best suit the platform needs.

Learn how to develop a professional portal system using JBoss portal server with the help of practical examples

Table of Contents

  1. JBoss Portal Server Development
    1. Table of Contents
    2. JBoss Portal Server Development
    3. Credits
    4. About the Author
    5. About the Reviewers
    6. Preface
      1. What this book covers
      2. Who this book is for
      3. Conventions
      4. Reader feedback
      5. Customer support
        1. Downloading the example code for the book
        2. Errata
        3. Piracy
        4. Questions
    7. 1. Portals and Portal Servers
      1. Portals
      2. Why portals?
      3. Types of portals
        1. Function-based portals
          1. Vertical portal
          2. Horizontal portal
        2. User-based portals
          1. B2B portal
          2. B2C portal
          3. B2E portal
      4. Portal servers
        1. Portlets and portlet container
        2. Constructing a view
        3. Portal specification and WSRP
        4. Servlets and portlets
      5. Summary
    8. 2. Getting Started with JBoss Portal
      1. JBoss portal server
        1. Features
                1. Technology and Architecture
                2. Security and Single Sign On
                3. Supported Standards
                4. Portal and Portlet Container
                5. Content Management System
      2. Installing the server
        1. Getting the software
        2. System requirements
        3. Installation
          1. JBoss portal packaged with JBoss application server
          2. JBoss portal binary without the server
          3. Building JBoss portal from source
      3. Configuration
        1. Changing the context root
        2. Changing the portal port
        3. Setting email service
        4. Configuring proxies
      4. Working with the portal
        1. Getting started
        2. Creating our first portal page
      5. Summary
    9. 3. Saying Hello with a Portlet
        1. Portal page
      1. JSR-168 and JSR-286 — Java portlet specification
        1. Portal URL
        2. Portlet modes
        3. Window states
      2. A Hello World portlet
        1. Portlet development environment
        2. Portlet package structure
        3. Writing the code
        4. Application descriptors
          1. portlet.xml
          2. portlet-instances.xml
          3. sayhello-object.xml
          4. web.xml
        5. Building the application
        6. Deploying the application
        7. Accessing the page and portal URL
      3. Summary
    10. 4. Managing the View
      1. The Presentation tier in portals
      2. Using Java Server Pages
        1. Archive package structure with JSP
        2. Writing the code
          1. Portlet class
          2. JSPs and portlet tags
        3. Application descriptors
        4. Building the application
        5. Deploying the application
      3. Using Java Server Faces
        1. JSR -301 Portlet Bridge
        2. Package structure with JSF
        3. Application descriptors
        4. Building the application
        5. Deploying the application
      4. Using JBoss Seam
      5. Building a sample application: an intranet portal
        1. Introduction
        2. Creating the MyCompany portal
        3. A JSP portlet
      6. Summary
    11. 5. Personalizing Our Portal Experience
      1. Personalization and customization
      2. Personalizing the portal
        1. Personalization models
          1. User profile-based
          2. Rules-based
          3. Collaborative filtering
        2. Personalized interface
          1. Layouts
            1. Creating layouts
            2. Using the layout JSP tags
            3. Configuring layouts
          2. Themes
            1. Defining themes
            2. Configuring themes
          3. RenderSets
            1. Using RenderSets
          4. Custom development
            1. Modifying header.jsp
              1. Creating new JSPs
            2. Modifying tabs.jsp
        3. Personalized content
          1. Access-level based portlets
            1. Preference-based portlets
            2. Analytics-based portlets
        4. Customizing the portal
          1. Setting preferences
              1. Internationalization and localization
          2. Drag-and-drop content
          3. Usability settings
        5. Summary
    12. 6. Portals and AJAX
      1. Rich user interfaces and AJAX
        1. Asynchronous JavaScript and XML or AJAX
      2. AJAX in JBoss portal
      3. JSR-168 AJAX limitations
      4. JSR-286 and AJAX
      5. Developing an AJAX portlet
        1. The front-end
        2. The server-side portlet
        3. Deployment
      6. AJAX support for markup
        1. Layout markup
        2. Renderer markup
      7. AJAX support for content
        1. Drag-and-Drop
        2. Partial content refresh
          1. Portal object configuration
          2. Portlet configuration
          3. Constraints in implementing partial refresh
            1. Inconsistent session attributes
            2. Non-AJAX interaction
      8. Considerations for AJAX implementations
        1. Global variables
        2. State management
        3. Visual cues
      9. Summary
    13. 7. Databases and Portal
      1. Database use in portal
      2. Hibernate
      3. JBoss portal server using Hibernate
        1. Hibernate configuration for portal features
        2. Content management system database storage
      4. Building portlets using Hibernate
        1. A persistent portlet
          1. Configuring and using Hibernate
          2. Creating the persistent class
          3. Setting up database
          4. Creating the mappings
          5. Configuring Hibernate
          6. Creating the Data Access Object class
        2. The Portlet class and configuration
          1. Building and deployment
      5. Summary
    14. 8. Managing Content in Portal
      1. Content management systems
        1. Adding content to portal
        2. Adding content to portal pages
        3. Editing content
            1. The CMS portlet
        4. CMS service configuration
        5. Content storage configuration
          1. 100% database storage
          2. 100% filesystem storage
          3. Mixed Storage
        6. CMS Interceptors
        7. Localization
        8. CMS workflow service
          1. Activation and configuration
      2. Summary
    15. 9. Portal Security
      1. Portal security
      2. Portal objects security
        1. Using the management console
        2. Using configuration files
      3. User security and access control
        1. Authentication
        2. Authorization
          1. User and role management
          2. The portal permission
          3. The authorization provider
          4. Making a programmatic security check
          5. Configuring an authorization domain
        3. LDAP configuration
        4. Single sign-on
      4. Identity management
        1. Managing users using admin console
        2. Identity portlets
          1. Captcha support
          2. Lost and reset passwords
          3. jBPM-based user registration
          4. Configuration
        3. Identity management API
      5. Content management system security
          1. CMS security configuration
            1. CMS super user
            2. CMS security console
      6. Summary
    16. 10. Web Services and Portlets
      1. Remoting in portal servers
      2. Web Service for Remote Portlets
        1. WSRP actors
          1. Portlet
          2. Producer
          3. Consumer
          4. End user
        2. Process flow
      3. WSRP Use Profiles
        1. Producer levels
          1. Base
          2. Simple
          3. Complex
        2. Consumer levels
          1. Base
          2. Simple
          3. Medium
          4. Complex
      4. WSRP in JBoss portal
        1. WSRP implementation support
      5. Enabling remoting in portlets
      6. Configuring WSRP producer
        1. Producer configuration
          1. Customization
      7. Configuring WSRP consumer
        1. Remote producer configuration using Admin portlet
        2. Remote producer configuration using the WSRP producer descriptor
        3. Managing consumer configuration
      8. Instantiation of a remote portlet
      9. Summary
    17. 11. Portlet Coordination and Filters
      1. Going from JSR-168 to JSR-286
      2. Portlet coordination and inter-portlet communication
          1. Portlet events
          2. Public render parameters
      3. Portlet coordination in JBoss portal
        1. JSR-168 inter-portlet communication
          1. Coding listener and portlets
          2. Configuring the listener and portlets
            1. Service descriptor
            2. Portal descriptor
          3. Deploying portlets
        2. Portlet events-based coordination
          1. Creating and retrieving events
          2. Configuring events
          3. Deploying portlets
        3. Public render parameter-based coordination
          1. Coding public parameters
          2. Configuring public render parameters
          3. Deploying portlets
        4. Additional JBoss coordination features
          1. Implicit and explicit coordination
          2. Explicit coordination configuration
            1. Event wiring
              1. Parameter binding
              2. Alias binding
      4. Portlet filters
        1. Creating the filter
        2. Configuring the filter
        3. Mapping the filter
        4. Deployment
      5. Summary
      6. Epilogue
    18. Index