This week I’ve been working with a significantly re-organised repository of OpenNTF Domino API. There were a few issues and it prompted me to finally get round to installing the latest fix packs for Notes and Domino. They had come out just before Engage, where I was speaking, so I chose not to upgrade then and had never got round to it. During the install I had a few problems with installing JVM patches to fix the LS2J issues with the Update Site database and basically broke my Notes Client, so had to uninstall and reinstall.
After all of that, I tried to access an XPages application via the server and got the dreaded Error 500 and the server console gave the message “Xsp Initialization error – Could not load class or methods”. Basically, the XPages runtime was FUBAR’d!
Google threw up only a handful of such issues, one of which was a post on the IBM Notes and Domino forum which related to someone having a problem with 9.0.1 Fix Pack 1. I did have a message when installing about it not upgrading the JVM, which seemed to fit. So I tried reverting to 9.0.1 and then upgrading. With still no luck, I tried uninstalling Domino completely and re-installing. Still no luck.
One of the other links pointed to a discussion on the OpenNTF Domino Debug Plugin project. The mention in that stack trace to the pde launch configuration piqued my interest, because I’ve been using that to live-run plugins from Eclipse for some time.
I had also noticed a message in the OSGi configuration dialog that a plugin was out of sync. So I deleted the pde.launch.ini file and suddenly the error went away.
Unfortunately that wasn’t the end of the problem though. It’s returned a few times over the course of this week, so much so that I traced through the relevant configuration files. The pde.launch.ini in <Domino>\data\domino\workspace folder points to a folder in the Eclipse workspace, workspace/.metadata/.plugins/org.eclipse.pde.core, that defines all plugins to load from Eclipse. Scanning that I found a reference to a plugin I had removed from Eclipse both in the config.ini and the dev.properties files – it appears that removing the plugin had not cleared the config file properly. The reference keeps coming back even on a newly-created configuration, so I think the workspace has got a bit corrupt and I may have to recreate it. But at least I understand the cause now and know one quick thing to try if I get that error again.