July 20, 2006 Leave a comment
This week and last I’ve been teaching an EJBs with RAD6 class. Now, the installation of RAD in the training centers was done the usual way. That means they installed it on one machine and then distributed the image to all the others.
Normally that’s fine. The problem with doing that with RAD is that installing RAD also installs the WebSphere Test Environment, which now is a fully functional version of WAS6. One of the major changes between WSAD 5 and RAD 6 is that the test environment is no longer customizable by workspace any more. Instead, the WAS environment remembers every app deployed to it from any workspace at any time.
That got me in trouble in Westborough for two reasons. One is that I had deployed a series of my own sample apps during the servlets and JSPs class, but when I deleted them at the end of the week, WAS though they were still there and complained during the EJB class about missing EAR files. Lovely. Eventually, when the server started up I was able to access the admin console and undeploy them.
The more fundamental problem, however, is that the installation of the test environment builds a node whose name is based on the server name. That meant that both last week and this week, all the machines had nodes with the exact same name. Holy conflicts, Batman. As usual, the problem showed up when we started trying to do JNDI lookups and threw ServiceUnavailable exceptions.
Last week we did some uninstalls and reinstalls of the product, which helped, but couldn’t be the right solution. This week we didn’t have the installation files at all, so I had to find another way.
At long last, I found it. That’s what profiles are for. By creating a brand new server profile, a new name is generated based on the current name of the server. Everyone was able to create a new profile, deploy apps to it, and run everything cleanly.
Boy I wish I’d known about that a long time ago. At least now I get it. I’m not sure if I want to recommend a different installation process or just assume that in each course we’ll create a new profile and move on.
The definitive answer is no doubt in the IBM set-up docs for their server-side classes. I’m certified to teach them, but haven’t looked at the set-up docs yet. I think I may have a set at home, though, that I got during the enablement class back in May. I’ll have to check. I seriously doubt that any training center is going to want to install RAD on each machine individually, though.