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.

ext.js moves to a commercial license

I first heard of this on some TWIT podcast so I went to see for myself but it appears that the ext.js Javascript framework has gone from an open source to a commercial license. This means that you have to pay if you use ext.js in an application that isn’t compatible with the GNU license. All of the applications I do fail this requirement.

This is too bad and effectively removes ext.js as a framework I will even consider. With dojo being the framework of choice come Domino 8.5 this will however not be too much of a loss.

New CompApp url type (cai:///)

Niklas Heidloff is being very productive today on the CompApp wiki. He just uploaded another page called Pass Context to Components when opening Composite Applications. On this page he explains a new url type (cai:///):

“Opening a connection to a CAI URL will cause the corresponding application to be projected to the client or updated if already on the client, and then opened in the user interface to the specified page. If no page is specified, the first page in the application is opened.”

Besides being, as Nathan describes it, “hideous”, it’s never going to work IMHO. This approach fails the number one test for URL’s – they should be easily computable and/or written by users. How something with an appInstanceID of 63 characters (example: CFB7535080ECD4C270FDD126C5DD9E27_11_5JMPDRH1000980269G784H2GO4) came through QA I don’t know.

The page refers to M5 (probably milestone 5 for 8.5) and says that “we might publish [the url type] in Lotus Notes 8.0.1”. Let’s hope not!

Stuff learned today

  • ContentViewer.setInput() is a lot different than ContentViewer.refresh()
  • When painting stuff in SWT you litterally have to paint everything yourself
  • 15 September 2008 is the longest day in 2008 (GC.stringExtent)
  • Sametime awareness is easy in Notes 8
  • Composite.getChildren() makes it easy to dispose all components

It’s been a while

It has been a while since I last blogged. Since last I have been in Paris and have had a busy week with customer projects, Lotus Connections 2.0 beta LDAP issues and some very interesting meetings regarding the future. Can’t say anything yet but it’s gonna be exciting I think.

Off to Paris

Tomorrow morning I’m off for an extended weekend to the cities of cities aka. Paris, France… How sweet is that!

Meeting Manager finally out

OnTime Meeting Manager is done! When I joined IntraVision in October Meeting Manager was almost ready, but not completely. Now the product is done and out the door – kudos to the team for putting in the extra hours to get the product done and out the door.

Warning – product plug comming up… 🙂

The product is called OnTime Meeting Manager and is an extension of the Rooms and Resouces feature of Notes/Domino. Meeting Manager extends R&R by handling booking multiple rooms at once, across time zones, booking catering (coffee, tea, lunch etc.) and by giving you fine grained control over calendar invites. MM even lets you invite invitees based on geography which is nice to reduce travel. Below is a small snippet from the release newsletter.

“Managing meetings and facilities can be time consuming. It involves a number of people and processes within your organisation. OnTime Meeting Manager is your one-stop meeting organiser – your personal electronic assistant – dedicated to making the process of organising meetings quick and efficient, leaving you free to concentrate on what’s central to your business.

OnTime Meeting Manager focuses on streamlining the process of making invitations, booking meeting rooms, ordering catering and reserving resources. At the same time, Management gains a clear overview of all the meetings within the organisation.”