Nice Notes 8.5.2 feature – policy control for access settings for Lotus Connections

Disclaimer: The following is from the release notes of Notes 8.5.2 so I don’t take credit for writing this. Lotus Notes 8.5.2 is in beta and there are no guarantees that the features described here will be in the final product that IBM ships.

From Notes 8.5.2 administrators can now define the Lotus Connections server to which the sidebar should connect by adding the following properties to the plugin_customization.ini file located in the <Notes>/framework/rcp directory. Modify this file within the installation package prior to distributing it to end users. If you are installing this code drop for the server as well, use the new policies to manage the accounts instead.

com.ibm.lconn.client.base/server=<server_URL>
com.ibm.lconn.client.base/authtype=<authentication_method>
com.ibm.lconn.client.base/authserver=
     <server_URL>:443/activities/j_security_check

where

  • <server_URL> is the full Web address of the Activities feature on the Lotus Connections server including the protocol. Add a backslash before each colon. For example: http://enterprise.example.com/activities
  • <authentication_method> is one of the following values:
    • J2EE-FORM: Form based authentication, default
    • TAM-FORM: Tivoli Access Manager Form authentication
    • SM-FORM: Siteminder Form authentication

    The port number might need to be changed from the default of 443 depending on your deployment.

To tell the Notes client where to read the server information from, add the following property to the plugin_customization.ini file:

com.ibm.lconn.client.base/policy-mode=<mode>

where <<mode> is one of the following values:

  • DEFAULT: Allows users to modify the server URL. This is how the client behaves by default.
  • FORCED: Prevents users from being able to edit the Server URL field in the Activities preferences page.
  • OVERWRITE: Overwrites the server URL that was specified in the preferences page with the one specified in the com.ibm.lconn.client.base/server property. Use this setting if you change deployments and want to force users to switch from accessing one server to accessing another.

If you choose to specify the server using the plugin_customization.ini file, keep these things in mind:

  • When you define the Lotus Connections server to connect to using the plugin_customization.ini file, be sure to specify the full URL of the Activities feature.
  • Tell users to access the Activities sidebar before opening the Connections preferences page when starting the Notes client for the first time. Accessing the sidebar is what triggers Notes to pull the server information from the plugin_customization.ini file.
  • If the server information displayed in the server URL field of the Connections properties page is not the information specified in the plugin_customization.ini file, click Restore Defaults, provide your log in credentials, and then click OK.

Nice Notes 8.5.2 feature – upgrading multiple local databases to a new ODS

Please note: The following is from the release notes of Notes 8.5.2 so I don’t take credit for writing this. Lotus Notes 8.5.2 is in beta and there are no guarantees that the features described here will be in the final product that IBM ships.

In the latest code drop of Notes 8.5.2, using either the Notes Client, Domino Administrator Client, or Domino Designer Client, a customer can force the client to perform ODS upgrades of all local databases. For most non-essential databases, the ODS upgrade will take place in a background process and while a database is upgraded, the end user will not be able to use the database. For essential databases that are in use at the point that an upgrade is attempted, the ODS upgrade will be done at the next first time open which will typically occur at client restart.

Configuration Options – Required

The following new NOTES.INI setting performs the upgrade:

NSF_UpdateODS=1

With this set, the client will do a one time pass to upgrade local databases using the compact task.

Configuration Options – Optional

In addition, the specific ODS level that is desired should be set (if none set, ODS51 will be forced):

To create ODS 51 databases:
Create_R85_Databases=1

To create ODS 48 databases:
Create_R8_Databases=1

User Feedback

For databases compacted in the background, there will not be any user visible indication that the database compacts are in progress. If a user attempts to use a database while the compact is in progress, they will see the error:

"Database is being Compacted; Compact must finish before use"

For databases that are in use at the time the compact is attempted (names.nsf, cache.ndk, log.nsf, and possibly user mail files), the compact will occur at the next client restart. When the database is compacted at restart, progress will be shown in the splash screen or in the status bar, depending on when the database is opened.

For each database that is compacted, a “Compacting…” and “Compacted….” will appear in the log.

11/12/2009 03:01:49 PM  Compacting dummy.nsf (dummy),  -r -C
11/12/2009 03:01:52 PM  Compacted  dummy.nsf, 0K bytes recovered (0%)

For each database that is at the desired ODS (or later), only “Compacting…” will appear in the log

11/12/2009 03:01:49 PM  Compacting dummy.nsf (dummy),  -r -C

At the end of the upgrade, the following will appear in the log:

10 databases had an older NSF ODS version. 8 of
those databases were successfully upgraded to a
later NSF ODS.

Book keeping Options

NSF_UpdatedToODS=#

After the upgrade is attempted for all local databases, this will be set to the ODS level that was requested. Deleting this setting will cause the code to attempt to perform upgrades. If upgrades are not necessary, the database will be skipped. If the client is shut down before all databases are completed and processed, then this is not set, and the next retry will attempt compacts on databases that are not at the desired ODS.

Clarifications/Not in scope

If there is an error during the compact, the database ODS will not be changed. There will not be any retry logic. If there is not enough space, which can be one of the errors, then the database ODS will not be changed. If a database takes a while to compact then the user does not have access to that Db during the compact. For always in use databases, their compact will be done on the next client restart, and will block user usage.

Limitations

Only Windows and Linux are supported. Macintosh support will be available in a later code drop.

Configure Eclipse 3.5 for Notes 8.5.2

As for previous versions I maintain a document outlining how to configure a vanilla Eclipse install to work with Lotus Notes for Java extension development (with install_id and rcp.base). I have made the first version for Notes 8.5.2 as of code drop 5 so please see Configure Eclipse 3.5 for Notes 8.5.2 if this is of use to you.

Please Lotus that Notes 8.5.2 is in beta and there are no guarantees that the features described here will be in the final product that IBM ships.

Notes 8.5.2 – preload on startup

Disclaimer: Lotus Notes 8.5.2 is in beta and there are no guarantees that the features described here will be in the final product that IBM ships.

Being part of the design partner program for Lotus Notes 8.5.2 I just received code drop 5 i.e. the latest beta of Lotus Notes 8.5.2. Part of this release you are asked a new question while installing which is whether you want to enable preloading Lotus Notes when starting Windows (don’t know if this goes for other platforms).

Now I’m on a SSD drive so my experience may be different from others on a “normal” spinning drive but it will be interesting to see how it performs and if it makes a noticeable difference.

Send/SMS… Sametime plugin

Using a couple of developerWorks articles (Extending the Lotus Sametime client with an LDAP directory lookup plug-in and Extending IBM Lotus Sametime Connect V7.5 with an SMS messaging plug-in) for inspiration I wrote a SMS plugin for the embedded Lotus Sametime client in Lotus Notes. The action goes in the Send menu when right-clicking a contact.

The plugin picks up the cellphone number from Domino Directory, supports sending to multiple contacts in one go and uses our exiting SMS gateway for sending the SMS’es (via e-mail). The hardest part was finding the menu path to use to stick the action where I wanted it. For others you should use com.ibm.collaboration.realtime.imhub.send/slotX where slotX is either slot1, slot2 or slot3 depending on where in the Send menu you want the action.

Once I’ve made it configurable which server to use for Domino Directory and how the SMS should be sent (which domain) I’ll probably make it publicly available.

Further reading

Properly signed XTAF dictionaries now available for Notes 8.5.x

The wait has been long but I just got word (via Christian Henseler) that IBM yesterday released properly signed XTAF dictionaries for Notes 8.5.1. In case you’re wondering “XTAF dictionaries” are the common dictionaries shared by Lotus Notes, Lotus Sametime and Lotus Symphony. Additional language dictionaries has been available for a while but the Eclipse feature wasn’t signed so it was troublesome to install on client machines. The Eclipse features are now properly signed and they are easy to add to an update site and roll out using a widget catalog.

The bundle you need to grab from PartnerWorld or Passport Advantage is “IBM Lotus Notes XTAF Dictionaries 8.5.1 for Windows and Linux Multilingual (CZHE3ML)”.

Installing Lotus Connections 2.5 on Windows 2008 Server

The last two weeks I have had the honor of installing Lotus Connections 2.5 on Windows 2008 Server 64 bit with Microsoft SQL Server 2005. Twice. And what a change from my normal Windows 2003 Server. In this blog post I’ll outline some of the issues I ran into and what I had to pay special attention to.

First off Tivoli Directory Integrator 6.1.1 (the component that move data from LDAP to the Profiles SQL database) isn’t supported and doesn’t run on Windows 2008 Server. The TDI scripts provided with Lotus Connections 2.5 doesn’t work with TDI 7 which leaves you at a dead stop. Only solution as of now is to find a Windows 2003 Server or other Windows platform to run TDI. Hopefully Lotus Connections NEXT will use TDI 7.

Next issue I had to address was that Websphere Applicaton Server (WAS) 6.1 should be at fixlevel 19 before you create any profiles on a Windows 2008 Server. This meant that the profile couldn’t be created as part of the WAS installer. This wasn’t too big of an issue as it’s a best practice not create the profile during setup anyway. A benefit of doing it this way is that it allows you to create the profile in another location than between your WAS binary directory.

So all was well and good? Not really as the GUI tool to manage profiles isn’t supported on Windows 2008 Server either. There is however a manageprofiles command to manage profiles which may be used. The command looks rather convoluted but it goes something like this (I ran it was admin):

manageprofiles.bat -create -profileName AppSrv01
   -profilePath d:WASProfilesAppSrv01
   -templatePath c:ibmwebsphereappserverprofileTemplatesdefault
   -nodeName LotusConnectionsNode01
   -cellName LotusConnectionsCell01
   -hostName lc.example.com
   -isDefault
   -winserviceCheck true
   -winserviceAccountType specifieduser
   -winserviceUserName username
   -winservicePassword password
   -winserviceStartupType manual

The last few arguments create the Windows service. I have had some success doing this but most times I leave the “winservice”-arguments out and use WASService.exe to create the service instead.

wasservice -add LotusConnections
   -serverName server1
   -profilePath d:wasprofilesappsrv01
   -startupType automatic

When I installed Lotus Connection I had to run install.bat as admin to avoid having the SQL connection check fail.

Generally in Windows 2008 Server I found that paying special attention to drive and folder security made my life a lot easier. That goes for both WAS and IBM HTTP Server IHS). Additionally on one IHS server I had to manually install GSKit to enable SSL as it wasn’t installed by the installer. I also had to put GSKit (C:IBMGSK7lib) on the PATH in Windows. To symptom was that IHS couldn’t access the SSL keystore.

I hope this will help someone.

Picture from NLLUG2009

Just received this picture from NLLUG2009 (the Dutch Lotus User Group 2009) of me and Kevin Cavanaugh deep in discussion. Goes to show the level of access possible at these events.

Speed up WAS restart when configuring with Lotus Connections

When installing and configuring Lotus Connections or any other Websphere Application Server based application you’ll probably find it beneficial to speed up restarting WAS. I found that disabling auto-start of some of the Lotus Connections applications was an easy way to do this. I simply followed the steps in “Websphere Experience: Startup behavior of an application” to do it.

For the people not afraid of XML-files you might as well simply edit the deployment.xml file(s) in <profile path>configcells<cell name>applications<application name>.eardeployments<application name> and set enabled=”false” for the <targetMappings>-tags at the top. As always with editing files directly – proceed at your own risk… 🙂