In search of a better Notes portlet

by Volker Weber

WebSphere Portal comes with a Notes view portlet that leaves a lot to be desired. We have a number of requirements it does not meet so we want to create a better one.

We need a capability to render a view in other ways than multicolumn. Each entry would render over multiple lines in a single column for instance. I assume that is easy to fix with some ReadViewEntry code and clever XSLT. Anyone done that and wants to share his code? IBM keep their stuff closed source so we cannot start from there. I have a theory why they cannot share their code. :-)

We need to able to proxy Notes forms through the portal. Currently the Notes view portlet chickens out and links directly to the Domino http-Port. When you click on a link you open a new window, whose content is rendered directly by the Domino web engine and deliverd through the http task. This is a definite no-no, since you need to expose the Domino server (model layer) to the web user (view layer). However, building the missing layers is not trivial because Notes documents can contain lots of MIME stuff after they have been rendered by the web engine. It would be even more daunting to go directly to the notes documents and then try to figure out RT fields.

Suggestions welcome ...


Just a quick thought during breakfast ;-):
How about having a Java class (either on WebSphere or on Domino) that reads the document as XML (you could use the DXL features of Domino 6). Then take an XSL style sheet and transform what you get into xHTML and then send that to your browser.
Then you'd only have to expose the Domino server to your WebSphere Server, which any you'd need to do to connect the layers...
Of course you'd have to have a style sheet for each form...



Ragnar Schierholz, 2003-04-15

Gah, that's disappointing, I didn't know the Notes portlet was like that. Well, anyone can code an HTTPConnection to a Domino box, where's the added value in the portlet?

I'd go with something like Ragnar's solution — it's probably the cleanest, given the cruft that goes with Domino-rendered documents.

Alternatively, you could go the indirect XML route by linking non-HTTP enabled Notes boxes to your portal server, using some middleware (MQ-Series for example... or whatever it's called now ;-)

From the Websphere portlet layer you can talk Corba/IIOP to domino to retrieve the document..

or as prevoiusly mentioned use http/SOAP to retirve the view as XML

suresh kumar, 2003-04-15

Suresh, I am aware of the possibilities. What I am looking for is someone who has actually done it and wants to share some code.

Volker Weber, 2003-04-15

In our research project we did something similar to what you would like to have (but it is for our own Java-based portal and not for WP)

We build a special kind of proxy portlet (a bit like a reverse proxy) which requests the Domino documents and views (in general HTML/JS/CSS over HTTP) from the Domino server and serves up the (heavily) rewritten content to the client.
Every interaction from the user is to the portal which then communicates with the Domino server and back again.
Right now urls for images and other resources are rewritten to go to the Domino server directly, but this could be easily changed and be also redirected via the portal. (For applets this poses other problems, so it is best to avoid applets as far as possible, also see below.)

There are obviously some limitations with this approach:
1. It can right now not handle Domino applets, because the names of JS functions are hard-coded in the applets.
2. It works for the Domino default JS functions, so actions etc. are preserved and fully working, but if forms/views etc. have lots of custom, complex JS-code in it, the automatic processing/rewriting will fail, but you can plug in special classes which handle such JS-code.

I would not recommend using XML/XSL nor Java classes because it is highly complex if not impossibly to have fully working views and forms with actions and so on. You would have to rebuild the whole HTTP-task which might be a piece of work :-)

If you are interested in seeing a demo or getting more information, fell free to contact me.


Olaf Hahnl, 2003-04-17

Old archive pages

I explain difficult concepts in simple ways. For free, and for money. Clue procurement and bullshit detection.


Paypal vowe