IronJacamcar 2 / Goals
Service oriented architecture
The project is split into artifacts which each represents a component for the Java EE Connector Architecture container in order to let external projects select which parts of IronJacamar they need. Examples- ironjacamar-core-notx-connectionmanager.jar
- ironjacamar-core-tx-connectionmanager.jar
META-INF/services/org.ironjacamar
Service files needed for
- XML parser
- Connection manager
- Deployer
Service provider interface (SPI) for all integration points
- Transaction
- Security
- Thread
- Naming
- Bean validation
- DistributedWorkManager
- Work manager statistics
- Statistics plugins
Proof of Concept for Java EE Connector Architecture 2.0
Redo the Java EE Connector Architecture specification focusing on updating the concepts to more modern ways of doing things. TODOs- Split interfaces such that only needed part needs to be implemented
- Allow injection of objects, like BootstrapContext and WorkManager
- Provide marker interfaces for main components, like ConnectionFactory and AdminObject
- Remove Common Client Interface
org.ironjacamar.spi
with sub-packages as public packages with OSGi exports.
Pool less container
Investigate the possibility to create a pool less container setup, where connections are enlisted in the transaction, but the physical connections are maintained outside of IronJacamar. Test setupLazy association for transacted based scenarios
Have the LocalTransactionConnectionManager and XATransactionConnectionManager implement
javax.resource.spi.LazyAssociatableConnectionManager
in order to allow transaction based deployments to take advantage of the feature.
This will require that the associated XAResource instance is being tracked.
Serializable connection manager
The connection manager should be serializable as per specification. Furthermore, they should be split into- NoTransactionConnectionManager
- LocalTransactionConnectionManager
- XATransactionConnectionManager