Thursday, October 2, 2008

Glassfish first impressions

I decided to experiment with your idea of creating a wiki for my internal home network for the purpose of storing all kinds of useful information that would otherwise be on a sticky note, in a notebook, or in some other ephemeral and easily trashable format. After extensive time looking at the Wikipedia entry for wiki software I settled (for reasons that I will go into in another post) on xwiki. After a quick scan of xwiki's install documentation I noticed that they had instructions for installing to Sun's Glassfish. Since Glassfish was announced I've had some curiosity toward it, but never the opportunity at work to really look at it. I thought that the rehabilitation of my home network might provide the ideal setting with which to give it a spin. So I downloaded it and put it on my webserver and turned to the xwiki documentation for the Glassfish install...

As you know I come from JBoss-land. JBoss pretty much is the begnning and end of my knowledge of J2EE Applicaiton Servers (I know Tomcat too, but I guess that's technically *just* a servelt container). So right away I was annoyed that the first step was to do a:

%java -Xmx256m -jar Glassfish-v2-blah.jar

JBoss for a long time has been a simple download and unzip operation. JBoss4.0.3SP1 experimented with a .jar distribution that you could double click on bringing up a GUI installer, but they abandoned it as the install dialog was too long and kind of confusing. Still though, even the one time JBoss did something other than a .zip, it was still as easy as double click.

The next thing that chafed was step two:

%ant -f setup.xml

Seriously? I need ANT on my webserver just to install the stupid App Server? I don't know how WebLogic and Websphere work, but really, does it need to be harder than unzipping something?

From there it just got worse ... another command line exercise to start the domain followed by instructions to go to the Glassfish webconsole for the deployment of my .war. Again my JBoss bias appears, but deployment can be as easy as drag and drop. Now, having been in the position where I've had to teach others the finer points of JBoss, I wasn't too upset at the Glassfish web console for controlling the server itself. Sometimes editing XML files just doesn't appeal to people. Sometimes it's nice being able to constrain the droids to a user interface. The Glassfish Web console is certainly much nicer and helpful than the JBoss equivalents. My only complaint is that the layout isn't all that intuitive (at least to me). I felt myself groping through the menus to find things that looked familiar. To be fair, I didn't spend a ton of time navigating through the web console and getting familiar with it, but it was opaque enough (translucent?) on first blush that it was clear I'd have to spend some time with the manual. Which brings me to the coup de grace...

The documentation totally $uX0rz. That's if you can even find it. It certainly isn't in big unmistakable letters on the Sun Glassfish site, and there's a bit of circular linking that goes on (including this abomination) before you settle on this page. Oh yeah ... in true Sun fashion Glassfish v2 is really "Sun Java System Application Server 9.1 update 1-9.1 Update 2". You're just supposed to know that. Kind of like SunOS 5.8 is really Solaris 8. I mean why have one name and a consistent marketing thrust when you can confuse and piss people off instead?

In the end I decided that experimenting with Glassfish at the same time I was experimenting with xwiki wasn't such a hot idea (too many variables when it comes to troubleshooting), so I dropped Glassfish and went back to Tomcat in this case (damn you JBoss 4.2.x). I'll likely look in on it later on. Give it some time for all that community written documentation to come pouring in. But for now ... meh.

1 comment:

Unknown said...

GlassFish is very easy to get working under OpenSolaris. I guess that makes sense. Anyway, I have had no trouble with GlassFish but I do frequently need to look up Solaris commands. I certainly concur with reducing the number of new things at once.