CHAPTER i Preface

This introductory overview gives a quick run down of what JBoss is about, and who the JBoss, Inc. is.

Forward

If you are reading this foreword, first of all I want to thank you for buying our products. This is one of the ways in which you can support the development effort and ensure that JBoss continues to thrive and deliver the most technologically advanced web application server possible. The time this book was written corresponds to an interesting point in the evolution of Open Source. There are many projects out there and once the initial excitement has faded, the will to continue requires some professional dedication. JBoss seeks to define the forefront of "Professional Open Source" through commercial activities that subsidize the development of the free core product.

JBoss' modules are growing fast. The JMX base allows us to integrate all these disparate modules together using the MBeanServer of JMX as the basic abstraction for their life cycle and management. In this book, we cover the configuration and administration of all our MBeans. We also provide a comprehensive snapshot of the state of JBoss server modules, documented in a professional fashion by one of our very best developers. From the basic architecture, to the advanced modules like JBossSX for security and our CMP engine, you will find the information you need "to get the job done." In addition, we provide a wealth of information on all the modules you will want to understand better and eventually master as you progress in your day-to-day usage of JBoss.

JBoss has achieved a reputation for technical savvy and excellence. I would like this reputation to evolve a bit. Don't get me wrong, I am extremely proud of the group of people gathered around JBoss for the past 3+ years, but I want to make the circle bigger. I want to include all of you reading this book. Think of JBoss, not only as a great application server, but also as a community that thrives by the addition of new minds. We are not simply interested in gaining users; we are interested in giving you the tools and the knowledge necessary to master our product to the point of becoming a contributor. Understanding JBoss' configuration and architecture is a necessary step, not only for your day job using JBoss in development and production, but also an initiation into the joy of technology, as experienced in Open Source.

We hope this book will fulfill its potential to bring as many of you as possible to a strong enough understanding of the modules' functionality to dream up new tools and new functionalities, maybe even new modules. When you reach that point, make sure to come online, where you will find a thriving community of committed professionals sharing a passion for good technology. At www.jboss.org , you can also find additional information, forums, and the latest binaries.

Again thank you for buying our documentation. We hope to see you around. In
the meantime, learn, get the job done and, most of all, enjoy,

xxxxxxxxxxxxxxxxx
Marc Fleury
President
JBoss, Inc.

xxxxxxxxxxxxxxxxxx

About the Authors

Scott Stark, Ph.D., was born in Washington State of the U.S. in 1964. He started out as a chemical engineer and graduated with a B.S. from the University of Washington, and later a Ph.D. from the University of Delaware. While at Delaware it became apparent that computers and programming were to be his passion and so he made the study of applying massively parallel computers to difficult chemical engineering problems the subject of his Ph.D. research. It has been all about distributed programming ever since. Scott currently serves as the Chief Technology Officer of the JBoss, Inc.

Marc Fleury, Ph.D., was born in Paris in 1968. Marc started in Sales at Sun Microsystems France. A graduate of the Ecole Polytechnique, France's top engineering school, and an ex-Lieutenant in the paratroopers, he has a master in Theoretical Physics from the ENS ULM and a Ph.D. in Physics for work he did as a visiting scientist at MIT (X-Ray Lasers). Marc currently serves as the President of the JBoss, Inc; an elite services company based out of Atlanta, GA.

JBoss, Inc, headed by Marc Fleury, is composed of over 100 developers worldwide who are working to deliver a full range of J2EE tools, making JBoss the premier Enterprise Java application server for the Java 2 Enterprise Edition platform.

JBoss is an Open Source, standards-compliant, J2EE application server implemented in 100% Pure Java. The JBoss/Server and complement of products are delivered under a public license. With upwards of 100,000 downloads per month, JBoss is the most downloaded J2EE based server in the industry.

About Open Source

The basic idea behind open source is very simple: When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it, people fix bugs. And this can happen at a speed that, if one is used to the slow pace of conventional software development, seems astonishing.Open Source is an often-misunderstood term relating to free software. The Open Source Initiative (OSI) web site provides a number of resources that define the various aspects of Open Source including an Open Source Definition at: http://www.opensource.org/docs/definition.html. The following quote from the OSI home page summarizes the key aspects as they relate to JBoss nicely:

We in the open source community have learned that this rapid evolutionary process produces better software than the traditional closed model, in which only a very few programmers can see the source and everybody else must blindly use an opaque block of bits.

Open Source Initiative exists to make this case to the commercial world.

Open source software is an idea whose time has finally come. For twenty years it has been building momentum in the technical cultures that built the Internet and the World Wide Web. Now it's breaking out into the commercial world, and that's changing all the rules. Are you ready?

About JBoss

JBoss, one of the leading Java Open Source groups, integrates and develops these services for a full J2EE-based implementation. JBoss provides JBossServer, the basic EJB container, and Java Management Extension (JMX) infrastructure. It also provides JBossMQ, for JMS messaging, JBossTX, for JTA transactions, JBossCMP for CMP persistence, JBossSX for JAAS based security, and JBossCX for JCA connectivity. Support for web components, such as servlets and JSP pages, is provided by an abstract integration layer. Implementations of the integration service are provided for third party servlet engines like Tomcat and Jetty. JBoss enables you to mix and match these components through JMX by replacing any component you want with a JMX compliant implementation for the same APIs. JBoss doesn't even impose the JBoss components. Now that is modularity.

JBoss: A Full J2EE Implementation with JMX

Our goal is to provide the full Open Source J2EE stack. We have met our goal, and the reason for our success lies on JMX. JMX, or Java Management Extension, is the best weapon we have found for integration of software. JMX provides a common spine that allows one to integrate modules, containers, and plug-ins. illustrates how JMX is used a bus through which the components of the JBoss architecture interact.

 

FIGURE i-1. The JBoss JMX integration bus and the standard JBossXX components

What this Book Covers

The primary focus of this book is the presentation of the standard JBoss 3.2.x architecture components from both the perspective of their configuration and architecture. As a user of a standard JBoss distribution you will be given an understanding of how to configure the standard components. Note that this book is not an introduction to J2EE or how to use J2EE in applications. It focuses on the internal details of the JBoss server architecture and how our implementation of a given J2EE container can be configured and extended.

As a JBoss developer, you will be given a good understanding of the architecture and integration of the standard components to enable you to extend or replace the standard components for your infrastructure needs. We also show you how to obtain the JBoss source code, along with how to build and debug the JBoss server.