Amitava Shee's Technical Diary

Thursday, May 11, 2006

JBoss 4.04-CR2 integration with JDK1.5 jconsole JMX client

Did you know that you could manage JBoss MBeans from jconsole? Here are the steps

In windows, open %JBOSS_HOME%\bin\run.bat and append the following parameters to JAVA_OPTS environment variable as the following

set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m
-Djavax.management.builder.initial=
org.jboss.system.server.jmx.MBeanServerBuilderImpl -Djboss.platform.mbeanserver -Dcom.sun.management.jmxremote

The arguments added is highlighted in red.

Now fire up jconsole and click on the MBeans tab.

Please see JBoss wiki for further details

Sunday, May 07, 2006

Open source J2EE stacks

I have been playing around with open source J2EE offerings. I tried the following 3
  1. Sun Java Application Server 8
  2. JBoss 4.0.4-CR2
  3. Websphere Application Server Community Edition 1.0.1
The Sun offering impressed me the most. This is mostly due to the tool support provided in Java Studio Creator 2 and NetBeans 5.0. Sun has a complete stack - from the proven Solaris to fully certified j2ee app server and slick RAD development tools. The only downside is the large memory footprint and somewhat sluggish performance. Please note that I am running everything in my laptop (w/1.5GB RAM) and is not indicative of performance in production deployments.

I have not tried Glassfish yet (this is the Sun backed community building J2EE 5 appserver) . I am planning to try it next week.

I was also pretty impressed with JBoss (especially JBoss seam). It has good tooling support via eclipse plug-in's. However, it took some fooling around with ant build scripts to get my app going. I loved seam, especially the sample booking application that integrates JSF with EJB3. Please note that this application uses facelet which I am totally excited about.

IBM has packaged Apache's Geronimo J2EE server as WASCE. The application server works just fine. However, the tooling support is less than perfect. IBM is relying on Eclipse WTP for the development experience. However, I could not get WTP to publish to the server. I had to manually export and deploy the EAR.

J2EE continues to be more complex than it need be. IMHO, they are playing catch-up with .NET. For instance, ASP.NET introduced the concept of programmable web controls 5 years back. JSF (borrows heavily from ASP.NET) is coming off age now. Features similar to ADO.NET (DataSet - disconnected in-memory data) is proposed for the upcoming JDBC 4.0

Ruby on rails (RoR) makes J2EE even more painful. Of course I may be comparing apples to oranges. With years of maturity and a vast array of capabilities in J2EE, there is really no other platform that comes close. But if you are building straight forward database driven applications, I would recommend lightweight platforms like RoR, php or Python.