Agile Zone is brought to you in partnership with:

Meera has posted 70 posts at DZone. You can read more from them at their website. View Full User Profile

Free Book: JBoss in Action

01.14.2009
| 58820 views |
  • submit to reddit
Published by: Manning
ISBN: 1933988029

Reviewer Ratings

Relevance:
5

Readability:
4

Overall:
4

Buy it now

One Minute Bottom Line

It is very simple to rate this book: everyone who uses JBoss AS should own and read a copy. The book is highly readable and with tons of working examples. The references at the end of each chapter are a real bonus.

Review

This book is divided into four parts, containing 15 chapters and two appendices.

Part 1: The JBoss Application Server

If you are using JBoss than you can simply skip Chapter 1(Vote for JBoss). This chapter gets you up and running with JBoss by describing the directories and files that are part of JBoss AS, how to start and stop the server, and finally show how to deploy and undeploy a simple web application.

Chapter 2(Managing the JBoss Application Server) starts with a description of how JBoss application server is architected;the JBoss Microcontainer and JMX. Next, you will learn how each of these components are configured using its own configuration file, and how you can change these as well. Next, we get a closer look at a few of the management tools provided by JBoss like the JMX Console and twiddle. And finally, a look at some MBeans that provide helpful information,the MBeans that give the list of names in the JNDI namespace or a list of system properties.

Chapter 3(Deploying applications) is especially useful if you are encountering tons of deployment errors. This chapter starts with explaining how to deploy applications as well as services. Next, the most important section which you shouldn’t miss reading at all; understanding class loading. In this section, the authors start with a description of the class loaders, then go into class scoping, which enables the application server to differentiate among classes. Next in this section, a look at loader repositories which enable several class loaders to share or isolate classes. The next few sections cover common deployment errors like class not found exception, class cast exception and so on. The last section in this chapter is about configuring data sources and Hibernate archives.

If you are concerned about the security of your applications than Chapter 4(Securing applications) shows you everything you need to know about securing your applications. The authors discuss in detail the fundamental concepts behind application security, including authentication, authorization, and encryption and how they are implemented in JBoss AS. They also show you how to configure by demonstrating how you can access security data from a database, LDAP, or other security datastores.


Part 2: Application Services

If you are deploying web applications to JBoss than you must read Chapter 5(Configuring JBoss Web Server). It covers configuring web applications, JBoss web server, the key configuration files. Next, is configuring specific things in web applications like the URL paths, then the authors discussed JBoss Web Server connectors and how they’re used to allow client requests to come in over different protocols. In the next section the authors give us an overview of why web applications have different class loading rules and show us how to configure different web-specific class loading parameters. Next comes valves, another feature of JBoss Web Server, and finally the last section is all about configuring JavaServer Faces.

In chapter 4, the authors discussed about the fundamentals of JBoss security and showed you how to configure security domains and login modules. Chapter 6(Securing web applications)  explores the configuration files necessary to enable security, how to enable authentication and authorization for URLs relative to your application’s context path. And finally see how to enable secure communication for server authentication, mutual authentication, and client-certificate authentication.

If you are a huge fan of EJB's just like I am, than Chapter 7(Configuring enterprise applications) shows you how to structure, deploy, and configure EJB applications. Then, you will learn how to configure the application server, and finally also secure EJB applications.

In Chapter 8(JBoss Messaging), you’ll learn about configuring messaging. The chapter begins by describing JMS and how JBoss Messaging is architected. You will see an example of a message-driven EJB and a message-driven POJO. The authors show you how to use a database for message storage, how to define destinations, and how to configure authentication and authorization for those destinations.

If you are quite familiar with web services than you skip the first few sections of Chapter 9(Configuring Web Services) which introduces you to web services, shows you how to develop a simple web service. However, don't skip the next few sections which are quite interesting and cover topics such as JBossWS annotations, securing your web services using authorization and encryption.


Part 3: JBoss Portal

I did evaluate JBoss Portal sometime in 2006. So, I am not an expert in this specific area so I just skimmed over Chapters 10 and 11. These chapters provide a very basic introduction to JBoss Portal. So, I am just going to quote the topics covered in these two chapters:
  •     Creating a portlet using JSPs and JSTL
  •     Using the Admin portlet and the descriptor files to define portlet instances and portlet windows
  •     Using multiple instances within a portal
  •     Adding content to the CMS
  •     Configuring window appearance
  •     Setting up access control for portals, pages, and windows
  •     Creating a custom portal

Part 4: Going to Production


All the chapters in this section are important and very interesting. These chapters cover everything you will need to know when your application goes to production.

Chapters 12 and 13 are dedicated to clustering. Chapter 12(Understanding Clustering) begins with the fundamentals of clustering; It was interesting to set up a simple cluster as explained in this chapter and learn how to configure JGroups and JBoss Cache. Chapter 13 covers clustering as applied to Java EE specific application components and services like session EJB's and entities, HTTP session replication, and JNDI.

If you need to access and improve the performance of your application, than you need to read Chapter 14(Tunning the JBoss Application Server). In this chapters you will see ways to tune the hardware, operating system, database, JVM, application server, and of course your deployed application. There are also a few tips on how to interpret thread dumps to pinpoint performance issues within your code.

Chapter 15(Going to production) is the last chapter in this book which covers topics such as selecting a platform, running JBoss AS as a service, running multiple JBoss AS instances on the same machine. You will also learn how to remove services which are not required, secure the management applications, change the default data source, database, configuring the EJB3 timer service and precompile JSPs.

Appendix A: JNDI namespaces

In this appendix, the authors explore how JBoss does JNDI binding and how to generically bind your applications in JNDI, making them more portable across application servers.

Appendix B: Change is inevitable

To quote the authors
This appendix contains changes that came after CR2 and before the book went to the printer. Any changes after that will appear on the book’s website.
Published at DZone with permission of its author, Meera Subbarao.

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

Comments

Liekele Nico va... replied on Wed, 2009/01/14 - 11:02am

We use JBoss for all our J2EE applications for the user site of our service.

Last week we were having RuntimeMemory problems (possibly the load is to heavy).

So I am also hoping JBoss 5 is lighter and a bit easier in configuration.

Mohamed Parvez replied on Wed, 2009/01/14 - 11:03am

I have used JBoss Portal some time back and resently been using Weblogic Portal 10.2. We are planning for a new portal implimentation, and we am not sure which one to pick.

 I need to evalute both and see, I guess this book will help me in the evalaution from full application server stack point of view. 

 Please pass me the free book  :-)

Barak Merimovich replied on Wed, 2009/01/14 - 11:06am

Good clean app server.

Christian Kreut... replied on Wed, 2009/01/14 - 11:09am

I have used JBoss since my course of studies!

Darren Bell replied on Wed, 2009/01/14 - 11:13am

We've been using JBoss since 4.0.  We're now testing 5.0.  Keep up the excellent work.

Cody A_ replied on Wed, 2009/01/14 - 11:19am

I have used JBoss 4+ for both development and production use. We particularly were interested in JBoss's clustering capabilities, which worked quite well for our needs. We were able to configure a 4 node , load balanced cluster with session replication and sticky sessions enabled. And surprisingly enough, the documentation was well written for our needs. I have yet to test JBoss 5, however I do plan to in the near future. I credit JBoss and company for their efforts to attain to the EJB 3 standards. 

 We were also interested in Drools (JBoss Rules), however, it has been a steep learning curve with the new syntax and all. Also our business logic was just too complex to try and write rules around.

  Overall I have had a pleasant experience in using JBoss. Keep up the good work.

Jürgen De Commer replied on Wed, 2009/01/14 - 11:24am

I've played a bit with SEAM with the Flamingo Toolkit, but don't have any real JBoss experience yet. The book would be great to get started.

Mark Mcconnaughay replied on Wed, 2009/01/14 - 11:25am

JBoss is a solid platform, albeit challenging to find up-to-date / accurate documentation. Looking forward to using JBoss 5.x.

Ryan Ransford replied on Wed, 2009/01/14 - 11:26am

We are trying out JBoss for the first time on our application's next tech refresh.

One of the biggest issues I run into is the fact that the stable release of the JBossTools plug-in does not work with Eclipse 3.4. If you are using Eclipse 3.4, be sure to use the release candidate version of the JBossTools plug-in instead of the stable version.

fabio bongiovanni replied on Wed, 2009/01/14 - 11:26am

I have used JBoss since version 4x

I do a lot of web developement . I find JBoss very powerfull e easy to use, its lightweight is amazing compared to other jee implementation.

i wish to improve myself with version 5.

great work.

 

Fabio

Suneel Marthi replied on Wed, 2009/01/14 - 11:33am

Been using JBoss for past few years as part of the Development process. JBoss is the ideal application server for development regardless of the target production environment as it enables speedier deployment and testing.

Ramesh Babu replied on Wed, 2009/01/14 - 11:35am

We use Jboss all the time. WE are very close to remove BEa and replace with Jboss---Please send the the book to rbarun@hotmail.com

Chetan Mehrotra replied on Wed, 2009/01/14 - 11:39am

We support three app servers in our product and its the JBoss which is used by all  devlopers. I specially like the support for exploded deployment which reduces dev time considerably

Further its lightweight and and has a fast startup time. For cluster testing I can simultaneously run two instance of JBoss on a single system and still having my system working normally.

Looking forward to understand its architecture through this book.

Paul Fife replied on Wed, 2009/01/14 - 11:41am

We're not using JBoss AS yet, but use lots of JBoss technologies.

Peter Weman replied on Wed, 2009/01/14 - 11:42am

Our company have used JBOss for more than 5 years now. I've just started using JBoss and lack a good introductory book. Looking forward to read the book. 

Pavan Kumar Sri... replied on Wed, 2009/01/14 - 11:53am

In my first project  I had ported an ejb app depolyed on Oracle App Server  to JBoss  & found the diff in usability & speed.  I wish to update myself with the lastest version of jboss  (with 'jboss in action' :-)

Josh Marotti replied on Wed, 2009/01/14 - 11:53am

Not much to add, as I haven't read the book, but I must say that I always use JBoss as a first choice.  When anyone asks why, I simply ask them how they make a JMS Queue in their app server of choice.  I write 2 lines of XML.  No UI with 12 steps, etc..

When I built a JMS Queue for the first time in JBoss, I realized the simplicity it gave to the developer... 

shah bhat replied on Wed, 2009/01/14 - 11:55am

I switched from Weblogic to JBoss a few years ago, though I don't do EJB programming anymore. But, JBoss offers decent support for EJB and Web container (Tomcat). One of their weakest area was messaging and I ended up using ActiveMQ, I would be interested in trying this again.

Craig LaValle replied on Wed, 2009/01/14 - 11:56am

Jboss certainly makes the rote stuff easy and the interesting stuff possible.  It could use a cleaner UI when it comes tojmx.  The Drools support is fantastic and the directory structure is more sane these days.  It was one of the nicest days when my company decided to drop the remaining Websphere servers and stick soley to JBoss...

 

Abhay Bakshi replied on Wed, 2009/01/14 - 11:57am

Good short review of JBoss AS features in the book, Meera.  That's helpful.  Thanks.  Happy New Year.

About the book, what else do we expect?  Bill Burke, a long time JBoss contributor and architect, currently a Fellow at the JBoss division of Red Hat, could also have contributed to the book contents.  It was good to meet and hear from Bill Burke at the 2002 The ServerSide Java symposium in Boston, MA.  (He has already authored EJB 3.0 5th Edition with Richard -- but that's by O'Reilly).

However regarding the JBoss in Action book and its authors Javid Jamae and Peter Johnson - both authors have great experience in IT.  I mean, Javid started programming BASIC on the Apple IIe at 5 years old (read http://java.dzone.com/articles/an-interview-with-jboss-action) and Peter is coding since last 40 years.  That's significant.

As we know, JBoss AS is a certified J2EE application server from JBoss Enterprise Middleware System (JEMS).  It started as an open source EJB container project during 1999-2000 time frame, and today (as of 2009 beginning) has witnessed millions of downloads across the world including 50,000 downloads of JBoss AS 5.0 alone.  JBoss AS 5.0 is a Java EE 1.5 compliant software.  It is built on top of the new JBoss Microcontainer and it is known that it had been in development for 3+ years.

I need to work on JBoss AS in critical production environments, so as per the book's review, I look forward to learning a lot from the book contents.  Thanks for a FREE book give-away, it's a great initiative WIN-WIN-WIN, as readers benefit, the technology gets promoted (rightfully so), and a hunt to distinguish a motivated dedicated software engineer from the crowd is quenched to an extent.

Akshay Jain replied on Wed, 2009/01/14 - 12:12pm

JBoss is a very reliable and easy to use app server.  Its console is hard to use to inspect deployed applications.  But I am still very green to J2EE, so I perhaps need to learn more.

Galder Zamarreno replied on Wed, 2009/01/14 - 12:13pm in response to: Patrick Jusseau

[quote=patrickjusseau] I have used JBoss since version 3.2.x and recently moved to 4.2 in order to use EJB3.0 . I do rich client (Swing) development. I find JBoss very powerfull but I wished there were some nice UI tools...[/quote]

 Did you have a look at Jopr or embedded Jopr?

André Lopes replied on Wed, 2009/01/14 - 12:18pm

I've been developing web applications in JBoss for almost 4 months, and so far i am enjoying the experience.

Keep up the good work!

First Last replied on Wed, 2009/01/14 - 12:34pm

Haven't used JBoss for a while. I'd like to get up to date with JBoss AS.

Marcin Sałaciński replied on Wed, 2009/01/14 - 12:58pm

I have been using JBoss in development of all internal systems in the company I work for. We started also using this application server in commercial projects we do for our customers. All that because JBoss is flexible, powerfull and what is also very important - robust and free. We have used Weblogic or Websphere, but JBoss seems to be the most recommended server for all the solutions that need to be fast, and need to be launched without paying thousands of dollars for one processor licence. The configuration of the server is maybe not a very trivial one, but once we do it we use it with pleasure - especially the auto-deployment makes our life easier.

Keep up the good work, JBoss team! 

Madeleine Wright replied on Wed, 2009/01/14 - 1:07pm

I'm planning on using JBoss for the first time with my Java Enterprise Honours group and really want to see this book!  We're interested in it particularly because of its support for Mobicents.

Ernest Zapata replied on Wed, 2009/01/14 - 1:13pm

Currently, my only experience of JBoss is limited to a quick install and review a few years back. Coincidentally, one of my management asked me just yesterday about JBoss versus Tomcat (which we currently use), and other application servers.

Hopefully, I can get a better understanding about JBoss internals/features so I can better provide my feedback to management.

Karta Z Doladowaniem replied on Wed, 2009/01/14 - 1:19pm

I'm struggling to use JBoss to do automated functional tests of JSF+EJB3 application. So far I had more success with GlassFish.I'm sure that "JBoss in action" is as good as other books from the "in action" series.

Daniel Ray replied on Wed, 2009/01/14 - 1:22pm

Manning's In Action series have always been my goto books when wanting to learn something new or simply to learn more about a particular technology e.g. Hibernate, Spring, Ant, JSF, Struts... etc. What I did not have was a JBoss In Action book to help me better understand the power that JBoss provides.

I am a government employee who has to use OC4J for an application server. Now, that costs are becoming more and more of an issue, the need to use something more affordable i.e. JBoss has become more of a priority. I can pitch the cost savings involved with licensing and tech support to our agency's director all day long, but if I can't convince some of our Oracle advocates how much easier it is to use JBoss, then my preaching for a change will fall on deaf ears.

Knowing that this book exists makes me that much more confident that I will be able to get the Oracle loyalists on board with JBoss by simply handing them this book and waiting a few days for them to come back to me with their WoW face. I say WoW because Manning books are just as addicting as the game!

Rick J. Wagner replied on Wed, 2009/01/14 - 1:31pm

We've used JBoss Application Server since JBoss 3 for production use, and before that for development.  It's become a great part of our enterprise infrastructure and it's something I'd recommend to anyone.

 Lately we've been using other JBoss products as well, to include Hibernate and Drools.  These tools have allowed us to build applications faster and without as much concern for maintenance over the long haul.  

 All things considered, JBoss has become a big part of our environment.  Thanks for the great product, RedHat!

 Rick

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.