adam bien's blog

Java EE 5 Architekturen book is completed 📎

The book "Java EE 5 Architekturen" book is completed now. I just have to write the preface. The publisher is going to review all five chapters, after this step I will send a copy to the technical reviewers.
This book describes serviceoriented (actually procedural), as well as objectoriented architectures. Similar to the "Enterprise Architekturen" - I didn't described the technology (EJB 3) and just concentrated on the essential ideas (I hate books with long introductions to the technology, I prefer to read javadoc or the spec instead...:-)). Some ideas were already presented on the OOP, Entwicklertage, JAX and JavaONE conferences - the feedback was positive (actually no negative feedback so far). The book contains independent patterns, ideas and utilities as well as suggestions for the combination or profiles of these. The last chapter describes superpackages, components and subsystems and how they are related to the independent patterns. I mainly described my experience from my projects, without beeing too theoretical. I will provide for every pattern a small sample as netbeans 6 project with glassfish v2 settings.
Some reasons for choosing Netbeans for creating the samples:
  1. Netbeans 6 support for Java EE 5 is really good. To create a EJB3/JSF applications no additional plugins are needed -> which is a bless. You just have to download Netbeans and deploy the projects. Netbeans already comes with SQL-Explorer, JBoss, Glassfish, WLS 10 support, Tomcat, JPA, JSP and JSF integration etc. You can even monitor appservers from the runtime tab (or perspective :-))
  2. I used ForteJ for the samples of my first book - the result was - I lost the interests for Netbeans and used Eclipse 1.0 - 3.2 for the remaining 4 books projects and several articles :-). I'm also working as a consultant for different companies. So I had to maintain different configurations of eclipse with different plugins/features like EMF, GMF, WTP, TPTP, DTP, SQL-Explorer/Quantum DB, Dali (the plugin hell?)etc. Although I still like lean IDEs, it became a huge overhead to maintain all the customer specific combinations. Netbeans was improved significanlty in the last years and solved the problem - no plugins are required per default :-). Interestingly enough Netbeans is also gaining momentum in Germany - perhaps also because of the "plugin hell". I also started to use Netbeans in my trainings/coachings - with very good experience - just extract and go.
  3. It is very easy and efficient to create UML-diagrams in netbeans. You can just reverse engineer an existing project into UML one. The diagrams look really great and are Power Point compliant All UML pictures/figures are made with Netbeans 5.5 and 6
  4. Was not important for the book, but: Netbeans 6 comes with JSR-295, JSR-295, Matisse support - this is very important for the long term strategic decisions.
...and why glassfish for deployment:
  1. The admin console is great - you can increase the heap, change classpath, setup datasources from graphical view - without vi or emacs skills :-)
  2. Glassfish is very good documented - you can download PDF docs, even the command line comes with unix-like "man" documentation
  3. I used already glassfish for some high performance projects because of grizzly (the glassfish kernel), and was impressed. It already comes with good out-off-the-box performance.
  4. Call-flow is great - you can monitor the whole EJB invocation stack. Event  performance monitoring charts are supported.
  5. You can manage, debug and profile glassfish from netbeans 6...
  6. Was not important for the book, but: the architecture of Glassfish V3 is even more exciting :-)
Now I have more time to describe some ideas in this blog and starting some opensource projects.