JBoss EJB 3.0 RC1 - JBoss AS integrationWe are getting closer to offering a professionally supportable release of EJB 3.0 with JBoss EJB 3.0 RC1. There are a lot of bugs fixed and and a lot of the features that are in the EJB 3.0 Public Draft have been implemented. We have also done even tighter integration with Hibernate 3.1. You can now inject a Hibernate Session or SessionFactory using the @PersistenceContext annotation. Hibernate Sessions will be managed and behave exactly like injected EntityManagers. You can view the release notes and download from here.
Use full EJB 3.0 out of the application server!JBoss EJB 3.0 supports an embeddable version that can be run outside of the application server in standalone applications, junit tests, Tomcat, or even other non-jboss application servers. This is an alpha release as there are a few issues we haven't fully worked out yet as you will see below. You can find out more information about it here and can download it here.
- Local JNDI
- Transaction Manager
- Local TX datasource/connection pool
- Stateful, Stateless, Service, Consumer, Producer, and MDBs
- EJB 3 Persistence
- Hibernate integration
- We have only sparsely tested the embedded stack. Consider it an alpha release
- The Embedded stack is based off of CVS HEAD, not JBoss 4.0.x. Future versions will be based off of 4.0.x code.
- We have done no pruning of jar files so the distribution disc size is a little large.
- Documentation is sparse. Hopefully the tutorial examples are enough to get started.
- We have not tested yet in other application servers, only within standalone Tomcat. No reason why it shouldn't work though
- We cannot yet take advantage of services like JNDI, TM, JMS, etc... when running in other app servers
- When embedding into Tomcat, you still require a JBoss specific JNDI implementation. Tomcat's JNDI is read-only.
- EJB/JBoss Security is not available yet.
- XA Connection pool is not available yet.
- EJB Timer service not supported
- Distributed remote communication is not supported yet.
- Even though @Remote interfaces are supported, you can only communicate through local colocated connections.
- You cannot access JMS remotely. Only locally. Thus, you have to lookup the "java:/ConnectionFactory".
- JNDI is not available remotely