Some useful tools for the (ancient) J2EE.

Building J2EE apps without tools could become tedious. There are many tools and frameworks available. You should consider the following points - choosing the proper tools:

  • Your build-script or build-system should be not dependent on a certain IDE. The build be also able to run outside the IDE
  • Wizzards are fine for the first iterations, but afterwards they are ofte not usable. If you generate code, this process should be automated and run outside the IDE
    The wizzards should be also able to run in headless mode or on a central integration server.
In my J2EE projects I used the following tools:
  1. ANT (if you have already scripts) or Maven2 (it is more interesting for JavaEE 5)
  2. Xdoclet: a flexible and extensible code generator. It is very easy to customize the templates and generate additional code. Generates DDs, Local, Remote, Home, Composite-Keys, Value Objects,  Facades etc.
  3. You can use APT (significanlty faster) instead of XDoclet. But you have to build the generator first...
  4. JBossIDE: an eclipse plugin (actually nature and perspective). Especially useful for code completion of xdoclet-tags (just click: ctrl+space to expand...)
  5. P6SPY: a free sql logging tool. Also binding variables in prepared statements are monitored.
  6. JMeter, Grinder, OpenSta(if possible LoadRunner). Load testing frameworks (from my perspective: even more important then unit-testing)
  7. JunitPerf:  collection of JUnit test decorators used to measure the performance and scalability of functionality contained within existing JUnit tests.
  8. JConsole: part of Java SE 5. A JMX-monitoring tool.
  9. JEdit: very useful and powerful editor.
  10. Continuum or CruiseControl: central build servers (very useful)
  11. JDepend, PMD, FindBugs, CheckStyle, Jalopy: basic QA stuff.
  12. Middlegen: DB import wizzards (can generate Hibernate, CMP 2.0 etc. from DB).
  13. StarUML: a free UML-Tool (sometimes it is required to draw pictures :-))
  14. Squirrel, QuantumDB, Eclipse DTP or just Netbeans: Database explorers
  15. Jikes: very fast compiler for development
IDEs actually does not matter. In the past I used eclipse. Now I'm using Netbeans 6.0. I just like to try something new.
Enjoy J2EE development! :-)


NEW online workshop: Web Components training (online)

Airport MUC workshops: Java EE 8, Java 9: Bootstrap, Effective, Architectures, Single Page Apps, Progressive Web Apps, HTML 5, ES 6, CSS 3 and Microservices

Podcast: airhacks.fm and newsletter: airhacks.news

A book about rethinking Java EE Patterns

Comments:

Aren't these tools useful useful in (ultra modern) JEE environments.

Posted by pulihora on August 15, 2006 at 08:35 AM CEST #

Pulihora,

no. In Java EE 5 space some tools (like XDoclet) are completely useless. I will explain that in future posting,

thanks,

adam

Posted by Adam Bien on August 15, 2006 at 01:01 PM CEST #

Hi,

nice list. The starUML link is pointing to MiddleGen, though.

Posted by Pabl on August 16, 2006 at 03:25 PM CEST #

Pabl,

thanks! I fixed it

Posted by Adam Bien on August 16, 2006 at 10:19 PM CEST #

Hi, you could easily replace p6spy, junitperf, and jconsole with an application performance test management solution like JXInsight.

JXInsight's JDBInsight was the first (and still by far) the best JDBC transaction analysis solution on the market. JXInsight distributed tracing framework supports Ant and JUnit. The JXInsight application management console also provides a production ready alternative to JConsole.

http://www.jinspired.com/products/jxinsight/insight.html
http://blog.jinspired.com

Regards,

William Louth, JXInsight Product Architect, JInspired

Posted by William Louth on August 16, 2006 at 11:52 PM CEST #

William,

I do not know/used your tool yet. Is it free? :-)

Posted by Adam Bien on August 17, 2006 at 06:50 PM CEST #

Post a Comment:
  • HTML Syntax: NOT allowed
realworldpatterns.com
Online Workshops
...the last 150 posts
...the last 10 comments
License