Download binaries here:

 http://openejb.apache.org/download.html

Highlights
---------------------

 Major new features:

 - EJB 3.1 Singleton Support
 - EJB Constructor Injection
 - Spring Integration
 - Multicast Client-Server Discovery

 Significant Improvements:

- EAR-style classpath application discovery groups individual modules as an EAR allowing sharing of persistence units and improved connector and custom MDB deployment.

- Detection of EclipseLink, TopLink, and Hibernate as JPA providers to automatically adds the right persistence unit property to for wiring in the OpenEJB TransactionManager.

- System Property and InitialContext property overriding now applies to persistence-unit properties and logging levels.

- Login/logout now possible in an embedded scenario via InitialContext params and initialContext.close() respectively.

- Complete overhaul of all client/server connection management dramatically increases performance.

- Several new checks added to Application Validation ruleset, some reworked to give even more details.


Full changelog
---------------------

New Features:

  * [OPENEJB-836] Singleton Session Beans
  * [OPENEJB-839] Singleton Read and Write method locking
  * [OPENEJB-841] Singleton @DependsOn load ordering
  * [OPENEJB-840] Singleton @Startup load-on-startup
  * [OPENEJB-837] Singleton Bean-Managed Concurrency
  * [OPENEJB-838] Singleton Container-Managed Concurrency
* [OPENEJB-821] EAR-style aggregation of modules discovered in the classpath
  * [OPENEJB-920] JDBC/DataSource based login module
  * [OPENEJB-913] Client Connection Failover and Request Retry
  * [OPENEJB-912] Client-side Connection Pool
  * [OPENEJB-857] Client connection KeepAlive
  * [OPENEJB-911] Graceful shutdown of client/server connections
  * [OPENEJB-903] Multicast discovery and grouping
  * [OPENEJB-905] PersistenceUnit property overriding
  * [OPENEJB-898] Property overriding for logging configuration
* [OPENEJB-897] LocalInitialContext.close() to logout of embedded container * [OPENEJB-894] LocalInitialContext.close() to shutdown embedded container
  * [OPENEJB-896] VM-scoped Security for embedded scenarios
  * [OPENEJB-805] JMS runs port-free in embedded mode
  * [OPENEJB-785] EJBd protocol over SSL
* [OPENEJB-881] Automatically set eclipselink.target-server for EclipseLink
  * [OPENEJB-880] Automatically set toplink.target-server for TopLink
* [OPENEJB-801] Automatically set hibernate.transaction.manager_lookup_class for Hibernate

Improvements:

  * [OPENEJB-893] Improved JavaAgent/JPA enhancement for Unit Tests
  * [OPENEJB-826] Improved detection of testing and embedded scenarios
  * [OPENEJB-899] Improved classpath configuration searching
  * [OPENEJB-831] PersistenceModule discoverable via the classpath
  * [OPENEJB-892] Remove ASM dependency
  * [OPENEJB-813] Example: CMP2 EntityBean
* [OPENEJB-348] Example: Minimal MessageDriven Bean via @MessageDriven * [OPENEJB-850] Example: Singleton bean with bean vs container concurrency
  * [OPENEJB-359] Example: Using JMS
* [OPENEJB-848] Validation: @TransactionAttribute mistakenly used on beans with Bean-Managed Transactions * [OPENEJB-855] Validation: Init/Remove annotations not used on MessageDriven, Stateless, or Singleton beans * [OPENEJB-677] Validation: PrePassivate/PostActivate not used on MessageDriven or Stateless * [OPENEJB-844] Validation: Singleton @Lock annotation not used with Bean-Managed Concurrency * [OPENEJB-846] Validation: Singleton mistakenly using @PrePassivate and @PostActivate
  * [OPENEJB-808] Validation: Unused ejbCreate methods
  * [OPENEJB-809] Validation: Unused ejbPostCreate methods
* [OPENEJB-859] Improved validation for <home>, <remote>, <local- home>, <local>, <business-local> and <business-remote> elements * [OPENEJB-817] ID portion of property overriding no longer case sensitive
  * [OPENEJB-856] Upgrade to OpenJPA 1.1.0
* [OPENEJB-904] Pluggable Client/Server connection strategies and factories * [OPENEJB-799] Support META-INF/env-entry.properites as an alternative to META-INF/env-entries.properies
  * [OPENEJB-800] Default env-entry-type to java.lang.String
  * [OPENEJB-823] Print Service properties on debug
* [OPENEJB-825] Eliminate possible mismatch of TxRecovery flag between TransactionManager and Resources * [OPENEJB-829] Automatically add an @DeclareRole ref for any role listed in @RolesAllowed
  * [OPENEJB-828] @EJB(name) value used to resolve ambiguous refs
* [OPENEJB-818] CMP1.1 and CMP2.x beans not required to implement javax.ejb.EntityBean
  * [OPENEJB-807] CMP2 EntityBean interface methods auto-implemented
  * [OPENEJB-814] CMP2 <cmp-field> declarations are optional
  * [OPENEJB-810] CMP ejbPostCreate methods made optional
* [OPENEJB-812] Explicitly check for CMP/BMP ejbHome.remove(ejbObject) mistake * [OPENEJB-916] Local Client "java:comp/ TransactionSynchronizationRegistry" lookup
  * [OPENEJB-915] Local Client "java:comp/TransactionManager" lookup
  * [OPENEJB-914] Local Client "java:comp/UserTransaction" lookup

Bugs:

* [OPENEJB-832] Invoking EJB via remote interface with argument of value boolean.class results in ClassNotFoundException
  * [OPENEJB-907] Element <jndi> possibly ignored in openejb-jar.xml
* [OPENEJB-833] @ApplicationException overriding via ejb-jar.xml broken
  * [OPENEJB-786] Stateless Container StrictPooling option ignored
* [OPENEJB-851] ActiveMQResourceAdapter: ActiveMQ Embedded broker always started even if BrokerXmlConfig is empty
  * [OPENEJB-824] HOWL TX Logging left on by default
  * [OPENEJB-843] CalculatorTest fails
  * [OPENEJB-834] some jsps in tomcat integration broken
  * [OPENEJB-804] ConnectionFactory autocreation
  * [OPENEJB-871] Saaj Implementation not found (--> NoClassDefFound)
  * [OPENEJB-861] Add support to add JSF impl jars to WEB-INF/lib
* [OPENEJB-852] Minor typo in <business-remote> and <business- local> validation message * [OPENEJB-835] @ApplicationException ignored when class exists in separate module
  * [OPENEJB-919] MDBs should be sorted to end of the deployment list
  * [OPENEJB-793] Possible infinite loop in CheckCallbacks
* [OPENEJB-811] Legacy "http://www.openejb.org/xml/ns/pkgen-2"; namespace not recognized

Reply via email to