Current: Senior Architecture and Project Manager at Dell Services. Past: Consultant at Southwest Airlines Software Development Manager at ACS, Inc. Architect at Parago Consultant at Fidelity Investments Education: Master Of Science from Stevens Institute Of Technology, Hoboken, NJ. Sunil has posted 5 posts at DZone. You can read more from them at their website. View Full User Profile

Book Review: JBoss AS 5 Development

06.09.2010
| 5802 views |
  • submit to reddit
Published by: PACKT publishing
ISBN: 1847196829

Reviewer Ratings

Relevance:
4

Readability:
5

Overall:
4

Buy it now

One Minute Bottom Line

This book is an excellent reference for J2EE developers who are developing and deploying applications using the JBoss 5 application server. It does not cover advanced topics like the integration of Seams, Drools, JBoss Ajax components, and JBPM. The author included some tips on performance tuning throughout the book, but I think it is a very important topic and should have been given an entire chapter. I give this book four stars.

Review

This book is divided into 14 chapters that show Java J2EE developers how to develop applications using the JBoss application server. This book is an excellent reference for J2EE developers using JBoss. In this review, I'll summarize some noteworthy chapters.

The first two chapters provide some useful tips for beginners on how to download, setup and run JBoss. It also explains different command line options to control JBoss. It provides a section on how to install and configure Eclipse and JBoss Eclipse plug-ins. It also covers new JBoss 5.0 functionalities and significant changes in the structure of the application server. These chapters are very useful to someone not familiar with JBoss.

There is a separate chapter covering the customization of JBoss which explains how to monitor JBoss as a service and how to view different Mbeans. It explains admin console and how to use twitter utility to interact with local and remote JMX server instances. It also explains how to view the JBoss server thread pool and change its attributes e.g. max. Pool size, KeepAliveTime, etc. Configuring Logging service and different login appenders are also explained in good detail, among other things. I wish the author would have covered JBoss Web console in more detail.

There is an excellent chapter on Developing EJB3 session Beans that covers everything you need to know about Stateful Session bean. It walks you through detailed steps for creating your project, different annotations, deploying it and testing it using a client. It provides an excellent overview on interceptors and how to use them. There is a separate section and simple example on the lifecycle of Stateful Session Beans. This chapter covers how to control the Stateless Session Bean pool size and specialize it for a single component. It also explains how to configure a stateful session bean cache in clustered and non-clustered environments, as well as how to disable a stateful session bean cache.

Developing JPA Entities are very well. The author covers the creation of an Eclipse project, how to create a database connection, persistent unit, how to map primary keys and generate entity beans and how to use them in a session bean. Each of these aspects are accompanied by a sample application.

The JBoss Messaging Service is covered in great detail. If you are familiar with JMS, this chapter can act as a quick reference for you. It explains how to setup a JMS connection factory, message destinations, attributes for optimum performance. It covers Message Driven Bean with an example. It also discusses advanced features like messaging bridge, persistence service and JMS security.

This book is reader friendly and very easy to follow. The instructions are very concise and clear. One nice thing about this book is that the author has done an excellent job giving an overview on each technology before going into JBoss specific details - this helps readers who are not familiar with the technology and provides a pretty good review to those who are. One thing I disliked is that important pieces of code are marked as numbers e.g. [1], [2] etc., which is confusing in the beginning but you get used to it.

Published at DZone with permission of its author, Sunil Parikh.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)