Lotus: Deployment of NSF based Composite Applications with Components in the same NSF

THEMES: Lotus\Notes/Domino 8 | Lotus\Composite Appl...
YEAR: 2007
Login Login
User: Anonymous

LABEL: Composite Application | Lotus Notes 8 | Lotus Notes API
THINGS: Deployment

Comments/attachments: Close
Deployment of NSF based Composite Applications with Components in the same NSF

Composite application definitions (CA XML) can be stored in design notes in Notes databases. You can have databases that don't contain anything else than just this composite application definition and an ACL on the database. From this composite application you can refer to other Notes databases, the NSF components, via Notes URLs.

As another alternative you can store the CA XML and the NSF component in the same database. This is what we do for our mail application and the contacts application. Both mail and contacts are composite applications in Lotus Notes 8.0 and they refer to components in the same databases. In this special case you don't want to refer to the NSF components via Notes URL that contains a replica id or file path. Whenever you move the NSF to another server or whenever you create a new NSF based on an NTF you would have to change the CA XML with the new Notes URL.

So for this special case we've introduced a new special type of Notes URL. If you use '0000000000000000' in the Notes URL Notes knows to open the NSF components from the same database it read the CA XML from.

In this sample I've created a new NSF based on the virtual template '- Blank Composite Application' and then I added a view 'MyView1' to it. Then I used CAE to put the NSF component in the application. You can type in the '0000000000000000' either manually or you can use the NSF component picker and choose 'current database' (but in the current build there are some issues with the NSF component picker).

As a result when you open the composite application you get the same UX as if you opened the NSF standalone (in the classic way) but now your app is actually a composite application that can be extended with other components via CAE.

There are also some other special replica ids that you can use.
notes:///0000000000000E00 - this opens the current user's mail database
notes:///0000000000000E01 - this opens the current user's contacts database
We didn't use these URLs in our mail and contacts applications though since they wouldn't support delegation.