Upgrading a Lotus Connections Pilot install

For testing etc. internally I use a Lotus Connections 2.x Pilot install which is working fine for me. Now that 2.0.0 FP1 has been out for some time and 2.0.1 has been released I have wanting to update my install. If nothing else to make sure it worked with Firefox 3. As previously blogged it is quite easy to update Connections if you know how. Before starting I had my doubts if it was possible at all to upgrade a Pilot install but I had to try.

For starters I wanted to get my install up to 2.0.0 FP1 and it worked perfectly! Upgrading to 2.0.1 will be the topic for another morning but based on these results it shouldn’t be a problem. Please note that you have to be a 2.0.0 FP1 in order for you to go to 2.0.1.

Below is the command line I used to upgrade my LC Pilot from 2.0.0 to 2.0.0 FP1 (installed to D:IBM). I basically followed my own instructions posted here.

D:IBMLotusConnectionsWebSphereLotusConnectionsupdate>updateLC.bat -fixpack -install -installDir d:ibmlotusconnectionswebspherelotusconnections -fixpackDir d:ibmLotusconnectionswebspherelotusconnectionsupdatefixes -fixpackID LC2001_Fixpack -wasUserId lcuser -wasPassword password

Lotus Connections 2.0.1 available

As posted by Luis Benitez Lotus Connections 2.0.1 as been shipped.

This quarter we shipped Lotus Connections 2.0.1 (on Halloween). If you are upgrading, you can download it from IBM’s Fix Central. One question that I’m continuously asked is: “what’s new in Lotus Connections v2.0.1?”. Well, here’s a list of what I’ve gathered:

  • Quickr integration with Activities – Push-button publication from an Activity into one of your Quickr Places for permanent document storage
  • Quickr integration with Communities – Allows communities to use Quickr as their content repository and document collaboration platform.
  • Enhanced person card
  • E-mail is no longer a required attribute (great for external implementations)
  • New feeds inside of Communities
  • New feeds for forums
  • New APIs for Activities, Blogs, Communities, Homepage (federated search), Profiles
  • Hidden support for STLinks (more about this later)
  • User Interface and Usability enhancements, for example:
    • Can now save members as part of an activity template
    • Drag-n-drop activities entries
    • Uploading images to a blog is now easier
    • Improvements in the Activities widget
    • Easier way to work with multiple bookmarks
    • A couple of bug fixes

The story on Lotus Connections 2.0 and Sametime awareness

So I have been messing a bit with Sametime enabling Lotus Connections the last few days. It all started with the browser blanking out on me once I enabled Sametime Links (stlinks ie. the Javascript API for Sametime normally used to Sametime enable web pages) in the LotusConnections-config.xml (the page source only showing the stlinks HTML). After troubleshooting and fixing the stlinks the Sametime Awareness still didn’t work so I opened a PMR with Lotus.

The answer from Lotus Support is however that Sametime Links is not supported in Lotus Connections 2.0. It maybe will be in Lotus Connections 2.0 but for now it’s not supported. Does this mean Lotus Connections 2.0 cannot be Sametime enabled? Well no! The technology used in Lotus Connections 2.0 is however a little bit different since it uses the Sametime Web API intriduced with Sametime Connect 8.0.1. So Sametime awareness is enabled in the Profiles feature of Lotus Connections if:

  1. You have enabled Sametime awareness in the profiles-config.xml (note it’s not enabled in the LotusConnections-config.xml as is stlinks).
  2. You have Sametime Connect 8.0.1 installed on the local machine.
  3. You are logged into Sametime.

Once I understood this the Sametime awareness works like a charm. Also using the Sametime Web API means that chats you start are started through the Sametime Connect client instead of the plain old stlinks web page. Very nice.

Does this mean that you only can have Sametime awareness in Lotus Connections 2.0 if using Sametime Connect 8.0.1? Well no but it requires that you get in contact with Lotus Support. They can send you a plugin for Sametime Connect 7.5.1, Sametime Connect 8.0, Lotus Notes 8.0.1 and Lotus Notes 8.0.2 (the latter two for the embedded Sametime client). Installing this plugin makes the Sametime awareness work as well.

And just to point it out. This was described in the InfoCenter (see links below) but maybe the LotusConnections-config.xml should have a comment indicating that Profiles would break if stlinks was enabled.

Further reading

Sametime blackbox – update needed for Lotus Connections 2.0

I wrote a number of articles in THE VIEW some time back on writing custom Sametime blackboxes (see the March/April and May/June 2008 issues). If you implemented the Sametime blackbox that read data from Lotus Connections (like it’s done on bleedyellow.com) and you have upgraded (or are planning to upgrade) to Lotus Connections 2.0 this post is for you.

The database schema for Lotus Connections 2.0 has changed slightly in comparison with Lotus Connections 1.0.x so if you’re using a custom Sametime blackbox to read data from Lotus Connections it needs to be changed. The only thing that needs to change is the SQL since the key column in the EMPINST.PHOTO table has been renamed from PROF_UID to PROF_KEY (hightlighted in the SQL below).

SELECT EMPL.PROF_UID UID, PROF_DISPLAY_NAME DSP_NAME, PROF_MAIL_LOWER EMAIL, PROF_MOBILE MOBILE, PROF_PAGER PAGER, PROF_TITLE TITLE, PROF_TIMEZONE TIMEZONE, PROF_TELEPHONE_NUMBER PHONE, PROF_BLOG_URL BLOG_URL, EMPL.PROF_DEPARTMENT_NUMBER DEPT_NO, DEPT.PROF_DEPARTMENT_TITLE DEPT_NAME, EMPL.PROF_ORGANIZATION_IDENTIFIER ORG_IDENT, ORG.PROF_ORGANIZATION_TITLE ORG_NAME, EMPL.PROF_ISO_COUNTRY_CODE CTRY_ISOCODE, CTRY.PROF_COUNTRY_DESC CTRY_NAME, P.PROF_IMAGE PHOTO_BYTES, P.PROF_FILE_TYPE PHOTO_MIMETYPE FROM EMPINST.EMPLOYEE EMPL LEFT OUTER JOIN EMPINST.PHOTO P ON EMPL.PROF_KEY=P.PROF_KEY LEFT OUTER JOIN EMPINST.DEPARTMENT DEPT ON EMPL.PROF_DEPARTMENT_NUMBER=DEPT.PROF_DEPARTMENT_CODE LEFT OUTER JOIN EMPINST.COUNTRY CTRY ON EMPL.PROF_ISO_COUNTRY_CODE=CTRY.PROF_ISO_COUNTRY_CODE LEFT OUTER JOIN EMPINST.ORGANIZATION ORG ON EMPL.PROF_ORGANIZATION_IDENTIFIER=ORG.PROF_ORGANIZATION_CODE WHERE EMPL.PROF_MAIL_LOWER=?

How to install a Lotus Connections fix (which is different from a fixpack)

Previously I installed Lotus Connections 2.0 fixpack 1 and it took me a while to figure out the syntax so I blogged it. Now I just installed a fix and that too took some figuring out so here is the syntax.

I had to install the LO32615 fix from IBM Lotus (issues with the work location fields) and the syntax is as follows:

  1. Follow the steps in the post I link to above but don’t invoke the updateLC.bat command
  2. Use this command: updateLC.bat -fix -install -installDir <Lotus Connections install dir> -fixDir <path to where the fix jar-file is stored on your system> -fixes <the name of the fix (here LO32615)> -wasUserId <WAS userid> -wasPassword <WAS password>

My steps for installing Lotus Connections 2.0 FP1

I installed Lotus Connections 2.0 fixpack 1 at a customer site today. It wasn’t as easy as expected and I had to restart the installation program 3 times but eventually I got through. Here are the steps I went through:

  • Stop all Lotus Connection features
  • Download fixpack and the update installer
  • Unzip the installer to a directory called “update” under your Lotus Connections installation directory
  • Create a directory called fixes in the “update” directory you just created and copy the fixpack to this directory
  • Rename the 2.0.0.0-LC-Multi-FP000001.jar to LC2001_Fixpack.jar
  • Open DOS prompt on Lotus Connections server
  • Run command: SET WAS_HOME=<path to WAS e.g. c:ibmwebsphereappserver>
  • Initialize the command prompt by running <path to WAS>binsetupCmdLine.bat e.g. c:ibmwebsphereappserverbinsetupCmdLine.bat
  • Navigate to the “update”-directory and execute this command: updateLC.bat -fixpack -install -installDir <path> -fixpackDir <path> -fixpackID LC2001_Fixpack -wasUserId <WAS user> -wasPassword <WAS admin password>

Part 2 of the blackbox article published

The second and final article in my series on Sametime blackboxes (Configuring the Sametime business card system, Part 2: Reach more data with custom blackboxes) has been published at the THE VIEW website and will be out in the May/June issue.

Where as the first article primarily focused on configuration and setup of the blackbox system the second article describes how to develop your own custom blackbox implementations. One of the blackboxes I describe is the one I developed for the bleedyellow.com Sametime server. This implementation retrieves business card data from Lotus Connections.

mod_rewrite for Lotus Connections

I’m messing a fair bit with Lotus Connections these days as I’m configuring Lotus Connections 2.0 beta 2 at the office. Lotus Connections 2.0 comes with six features as a new Homepage feature has been added. By default you configure each of the six features with a separate server path that is /activities, /homepage etc. This means that the users have to explicitly state which feature to access from the get-go (e.g. http://lc.example.com/homepage). What I really wanted was for the Homepage feature to display whenever the user surfed to the “base url” (http://lc.example.com).

This is actually quite easy as Websphere uses IBM HTTP Server which is a fork of the standard Apache server. This means that IHS ships with the mod_rewrite module which allows you to do URL rewriting.

The steps are as follows:

  1. Edit the conf/httpd.conf file.
  2. Enable mod_rewrite by removing the # character in front of
    “LoadModule rewrite_module modules/mod_rewrite.so”.
  3. At the bottom of the file add the following:

    <IfModule mod_rewrite.c>
       RewriteEngine on
       RewriteLog logs/rewrite_log.log
       RewriteLogLevel 0
       RewriteRule ^/?$ /homepage [PT,L]
    </IfModule>
    
  4. Restart IHS.

Easy peasy…

WAS lessons from last week

Last week I overcame two stumbling blocks on my way to getting Lotus Connections 2.0 Beta 1 (yeah I know there’s a beta 2) up and running. I’m blogging about it to help others that might experience the same problems.

LDAP issue

The first problem was that I couldn’t log into the WAS admin. console after configuring the federated LDAP directory (I’m using Domino 7.0.2 LDAP). The exception I got in my SystemOut.log was the following (important part in bold):

“00000023 exception E com.ibm.ws.wim.adapter.ldap.LdapConnection search(String, String, Object[], SearchControls) CWWIM4520E The ‘javax.naming.NoPermissionException: [LDAP: error code 50 – Insufficient Access Rights]; remaining name ‘/’; resolved object com.sun.jndi.ldap.LdapCtx@9e009e0′ naming exception occurred during processing.
[29/04/08 11:46:22:494 CEST] 00000023 exception E com.ibm.ws.wim.adapter.ldap.LdapConnection search(String, String, Object[], SearchControls)
com.ibm.websphere.wim.exception.WIMSystemException: CWWIM4520E The ‘javax.naming.NoPermissionException: [LDAP: error code 50 – Insufficient Access Rights]; remaining name ‘/’; resolved object com.sun.jndi.ldap.LdapCtx@9e009e0′ naming exception occurred during processing.
at com.ibm.ws.wim.adapter.ldap.LdapConnection.search(LdapConnection.java:2419)
at com.ibm.ws.wim.adapter.ldap.LdapConnection.checkSearchCache(LdapConnection.java:2349)
at com.ibm.ws.wim.adapter.ldap.LdapConnection.search(LdapConnection.java:2524)
at com.ibm.ws.wim.adapter.ldap.LdapConnection.searchEntities(LdapConnection.java:2668)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.search(LdapAdapter.java:2763)
at com.ibm.ws.wim.ProfileManager.searchRepository(ProfileManager.java:4094)

After spending a lot of time trying to diagnose the issue and making sure I did it EXACTLY as prescribed by IBM I still couldn’t solve the issue. I had no problems logging into the LDAP directory which otherwise worked perfectly from other applications. Finally thanks to Robert Thatcher from IBM the problem was solved. It had nothing to do with wimconfig.xml as such or other WAS goodness – it was simply due to missing rights to the LDAP directory. I guess the exception says it too…

I simply didn’t think the user logging into the LDAP needed anything else than reader access in the ACL of Domino Directory. It turns out that Manager is more like it. Hmmm…. I haven’t turned the access level down yet so I don’t know if less will do it as well.

Also many, many thanks to Courious Mitch for helping me out with wimconfig.xml.
</p<

IHS node issue

Second issue was that I ended up with two nodes under my WAS profile when configuring the IHS WAS plugin. The actual issue that made me look there was that I was unable to manage SSL certificates for the IHS plugin.

The problem was that when creating the webserver1 in the WAS admin. console I didn’t specify the hostname that WAS was actually bound to. Instead I specified the DNS name I would like to contact WAS using which made WAS create two nodes. Using the fully qualified hostname of the WAS server solved this issue.