Viewpoints
Marc Fleury's Viewpoint: Enterprise Java Made Easy
Simplicity Is The Key Driving Force Behind Java's Success
Apr. 2, 2006 01:00 PM
Simplicity is the key driving force behind the success of Java. When Dr. Gosling invented the Java language in 1995, the goal was to make life easier for software developers. Java's elegant language design, simple API, and vendor-independence have made it the platform of choice for many developers. However, as Java evolves to address enterprise needs for scalability and flexibility, developer friendliness has taken a back seat. The complex programming model in EJB 2.1 and J2EE 1.4 has hindered Java's adoption, and it's the root cause for many slow-performing and error-prone Java applications.
Fortunately, help is on the way. The upcoming EJB 3.0 and J2EE 1.5 servers greatly simplify enterprise Java development without compromising scalability and flexibility. Unlike many other third-party commercial and open source J2EE alternatives, EJB 3.0 is completely standard-based. There is no vendor lock-in. In fact, I think EJB 3.0 is probably the most significant invention in J2EE's history. EJB 3.0 simplifies application development in the following three key areas:
- EJB 3.0 eliminates the need for excessive and redundant XML-based deployment descriptors. Instead, the bulk of configuration options are specified within the source code as Java annotations. The XML deployment descriptors are still available as an optional choice for administrators who need to override default configuration values at deployment time.
- EJB 3.0 simplifies Object/Relational Mapping (ORM) via a new entity bean model. Java developers only need to work with plain old Java objects (POJOs) and build the domain data model, following sound object-oriented design principals. The mapping between object hierarchy and relational table schemas is transparently handled by the EJB 3.0 server. The EJB 3.0 server also manages database connections, enforces transaction rules, generates database-specific SQL statements, and detects updates to mapped POJOs in the application.
- EJB 3.0 enables new application architectures based on the Dependency Injection design pattern. Resources and services can be declaratively wired into the application via annotations or XML configuration files. That allows developers to build loosely coupled applications.
The JBoss Application Server 4.0.3 is the first J2EE application server to support EJB 3.0. While JBoss EJB 3.0 is still in the beta stage, we know some of our customers are already using it successfully in their production environments. But why stop at EJB 3.0? Why don't we take the underlying concept of EJB 3.0 and apply it to simplify other Java middleware products? That is exactly the direction we are moving toward at JBoss. In the near future, we aim to support the EJB 3.0-style programming model (i.e., annotations, POJO services, and dependency injection) throughout our JEMS (Java Enterprise Middleware System) product suite, including JMX, JMS, JSF, jBMP, JBoss Cache, and JBoss Portal. Other Java middleware vendors will like to follow suit and support the EJB 3.0 programming model in their products. Furthermore, the JBoss Eclipse IDE 1.5 integrates EJB 3.0 specific wizards, annotation-aware smart editors, Hibernate code generation tools, and JBoss server management tools, all in one Eclipse-based open source IDE package.
The result of all this is a simpler and more robust J2EE. The ultimate winners, of course, are Java developers like yourself. If you are interested in learning more about EJB 3.0, please come to our JavaOne sessions led by experts such as Bill Burke, Gavin King, Tom Baeyens, Michael Yuan, and Stan Silvert. If you can't make it to JavaOne, you can see much of our EJB 3.0 related content and demos on our Web site at www.jboss.com/javaone05. Hope to see y'all there!
This guest editorial was originally published in JDJ's JavaOne Focus Issue, on June 20, 2005.
About Marc FleuryMarc Fleury is the chairman, president, and CEO of JBoss. He developed the first release of the open source JBoss Application Server in 1999 while working as an independent consultant and later founded Atlanta-based JBoss in 2001 to provide support services, including training, support, consulting and documentation for JBoss AS. Today, the JBoss product line has expanded beyond JBoss AS, which remains the flagship product in the JBoss Enterprise Middleware System (JEMS). Marc was previously with Sun Microsystems, where he held engineering and sales positions in the United States and France. Marc is a graduate of France's Ecole Polytechnique, where he also earned a PhD in Physics for experimental work performed as a visiting scientist at the Massachusetts Institute of Technology. He holds a Master's in Theoretical Physics from the Ecole Nationale Superieure, rue d'Ulm. Marc also served as a lieutenant in the French paratroopers.