| = OpenEJB 3 |
| :index-group: EJB |
| :jbake-date: 2018-12-05 |
| :jbake-type: page |
| :jbake-status: published |
| |
| |
| = Past, Present, and Future |
| |
| The goal of OpenEJB 3 is to merge our past, present, and future into one |
| codebase. OpenEJB 3 will take the excellent features in OpenEJB 1.0 |
| (tomcat integration, testability, embeddibility, ease of use, etc), move |
| towards an IoC architecture based on Gbean.org and Spring, bring in the |
| OpenEJB 2 code, and implement the EJB 3.0 specification. |
| |
| = The Plan |
| |
| We will start on OpenEJB 3 by taking the 1.0 code (pretty much the same |
| as 0.9.2), merging in the 2.0 code, and ensuring that the entire time |
| the code we write is code you can use! We will never drop a feature, |
| even temporarily. We will start from code that users are now using and |
| always keep, maintain, and improve those features as we add new |
| features. Releasing early and often. |
| |
| == Past |
| |
| OpenEJB 1.0 (from 0.9.2 lineage) has some great features and many people |
| that depend on them. Tomcat integration, Collapsed EARs, Container |
| Driven Testing, easy embedding, and other features make OpenEJB a unique |
| EJB implementation. We're going to take this code, kill all the static |
| old-school techniques, modernize it with and IoC architecture based on |
| the gbean.org kernel. The gbean kernel is an IoC kernel compatible with |
| both Spring and Geronimo. |
| |
| == Present |
| |
| OpenEJB 2.0 is an awesome fast implementation of EJB 2.1 that runs in |
| Apache Geronimo. As the gbean.org kernel is both Spring and Geronimo |
| compatible, it provides a great way for us to take the |
| Geronimo-compatible EJB containers and deployers in OpenEJB 2 and start |
| hammering them out and releasing them to long-time OpenEJB users. It |
| will also allow people using OpenEJB to start experimenting with |
| Spring's sophisticated IoC features. |
| |
| == Future |
| |
| EJB 3.0 is a new direction for EJB and we're going to do it with style. |
| A focus on simplicity is where OpenEJB shines. Combining the EJB 3.0 |
| Simplified specification with our existing lightweight features, like |
| Container Driven Testing, is just the beginning. We plan to go way |
| beyond the planned additions and into areas the J2EE spec groups won't |
| go such as deployment descriptors with attributes, simpler packaging, |
| more flexible classloader setup, more powerful IoC support, simpler web |
| services support and more. |
| |
| = Release on Day One |
| |
| Keep it working, keep it progressing, keep releasing. The 3.0 version |
| number won't be the finishing line, but the starting line. Our work will |
| start out as 3.0 on day one and keep incrementing the version number as |
| we get further along our feature list. The EJB 3.0 spec is not completed |
| and the OpenEJB 3.0 code line will be equally dynamic and best suited |
| for adventurous developers who enjoy reading release notes and |
| participating on user lists. There will be an incredible focus on |
| keeping things stable enough to use the entire time as we work towards |
| feature completion. |
| |
| The effect of all this is that you get a fixed-up, far more extensible, |
| version of the code you are already using delivered to you right away. |