Did We Spoil the End User? Building Personalization into JavaServer Faces.
This session profiles a project to develop a web application to be provided
in an application service provider model to more than 120 organizations with an
average of several dozens of users. It involves a single database and a single
application instance with a generic code base. The challenge put to the
developers: allow every organization to customize the application, tailoring it
to its specific needs--without changing a single line of code or interfering
with the other organizations using that same application. On top
of that, all the individual users should be able to personalize their experience
by overriding the customizations made for their organization. Some end users
even need the ability to define several themes, disjunct sets of
personalizations that they can switch between on the fly (without logging out of
the application). All personalization and customization is to take
place at runtime, without bouncing the application
server. Customization and personalization in this case mean the
following, for example:
- Hiding fields in the web forms
- Adding items to enter data associated with the selected
record and storing that data persistently (these new items can be of any
display item and can have data associated to populate drop-down lists and
radio groups; custom items can have custom validations as well)
- Changing the set of columns displayed in a table (and/or
their ordering)
- Changing style elements such as logo, font, and certain
color settings
- Defining item default values for creating new records
- Tuning validations on items
- Tailoring ResourceBundles to provide custom labels,
prompts, tool tips, and the like, not just by locale but also based on
organization and individual user
- Adding personal comments and
annotations to individual data records
The presentation
demonstrates how the developers made the JavaServer Faces technology-based
application deal with these challenges. Some key elements in their approach:
expression language expressions, database-backed ResourceBundles, CSS
generation, LDAP, and persistent application metadata.
Download de presentatie (2.745 Kb)

|
Lucas Jellema AMIS Services B.V. Lucas Jellema is technical architect at AMIS, an Oracle, Java, and SOA specialist based in Nieuwegein, The Netherlands. He works as a consultant, architect, and instructor in diverse areas such as SQL and PL/SQL, Java, Oracle ADF and WebCenter, and SOA Suite. The running theme through most of his activities is the transfer of knowledge and enthusiasm.
Lucas is an author at the AMIS Technology Blog (http://technology.amis.nl/blog), for Oracle Technology Network, and for international magazines. He is a frequent presenter at international conferences, including Devoxx, JavaOne, Oracle Open World, ODTUG, UKOUG, OBUG, Oracle University Celebrity Seminars, and AUSOUG. He was nominated Oracle ACE in 2005 and ACE Director in 2006. In September 2010 his book, the Oracle Press title 'Oracle SOA Suite 11g Handbook' was published.
|
|