Several weeks ago, Tony Higham, an executive IT architect in the WebSphere Portal Technology team at IBM, conducted a "residency" on TechTarget's Expert Answer Center. During this two-week period, Higham entertained questions from TechTarget readers about WebSphere Portal.
We have edited a few of his answers to questions related to Domino. But all his answers to the questions he fielded, in their entirely, are archived at the Expert Answer Center.
Question: We would like to add Lotus Notes e-mail and calendaring (version 6.5.4) into a portal environment. What are the key factors to be considered before doing this?
Tony Higham: The good news is that Domino and Portal benefit from excellent integration. The two main considerations are how you integrate the two products and what interface you present to portal users.
The key factor from an integration perspective is how a user's credentials (user name and password) get passed from the Portal to Domino. WebSphere Portal provides a credential lockbox called the Credential Vault, which can hold either a shared user name and password (for applications that can use the same credentials for all users) or private credentials for each user. Of course, in the case of e-mail, they will have to be private credentials.
When the user first accesses the portal page with a portlet that accesses Domino mail and/or calendar, the user is prompted for their user name and password. For all subsequent visits, the portal simply passes the user name and password on to Domino. If the user changes his/her password, the portal will prompt the user to re-enter the credentials. While this is a feasible solution, most companies don't like this solution for e-mail because it breaks the concept of one login to all applications (single sign-on).
The preferred integration method is to enable single sign-on between Domino and WebSphere. This requires a little more setup than the Credential Vault, but when it's set up, the portal automatically authenticates with Domino and vice versa -- it's seamless single sign-on between the portal and Domino.
When a user logs into the portal and goes to a page with a mail portlet, the mail is displayed immediately. There are also two user interface options. You can use the Domino Web Access (DWA), which used to be known as iNotes portlet. For users who are very familiar with the DWA interface, the DWA portlet is very appealing from a UI perspective. If you choose this route, I recommend implementing the lightweight DWA interface because we've seen performance improvements in the portal environment in the range of 30%.
The other option is called the Common PIM Portlets (CPP). The CPP portlets provide a generic interface to all different types of mail systems. The UI is not as rich as the DWA portlet, but if you have a mixed e-mail environment or just want to avoid the overhead of the DWA user interface, the CPP portlets are a great way to go. I suggest that you evaluate both options.
Question: What approach would be the best to programmatically integrate a custom Domino DB with a JSR 168 portlet? I'm thinking about performance.
Tony Higham: There are lots of ways to create portlets that integrate with Domino. The answer to this question depends on whether or not multiple portlets will need to access the Domino database. From a performance perspective, retrieving and caching the information so that it can be used again by the portlet (or multiple portlets) is one way to maximize the performance aspect of the design.
One way to do this is to create a portlet service that accesses the Domino database (or any other back-end application/data store) so that the specifics of accessing Domino applications are not embedded in the portlet code. Portlet services are shared by all portlets and are, therefore, a great place to implement logic (and caching) that is shared by multiple portlets.