Berkeley Database JCA Resource Adapter

SourceForge project Latest version: 0.3.1
If not specified otherwise, features are the same on all tested application-servers and  JCA versions  - supports LocalTransaction, 1 bdb-environment, n databases, no security contract..yet
 - simple create-, delete-, put-, get- and streaming-interactions
 - shutdown-interaction
 - chronological logger with log-viewer (for testing + verification purposes)
 - simple BMP-EntityBean example (uses JUnitEE test-framework)

This project currently uses these other components:

 - JUnitEE
 - concurrent package by Doug Lea

Coming up: Release 0.4

Release 0.4 will implement the JCA security contract and use the *encryption version* of Berkeley DB
(the first release will only support Weblogic 7, 8.1 and JBoss 3.0.6)

@todo for 0.4 status

 - separate InteractionSpec implementations for administrative, basic and streaming interactions done

 - improved BDB-deadlock handling done
 - simple web-console for administrating users/passwords (WAR application)
in progress

 - implement security contract + user administration in progress

 - configurable retry-count in progress

 - installation- deploymet-documentation
in progress

 - javadoc
in progress

 - "inner workings" documentation
in progress

@todo (sorted from high to low priority)

 - implement BDB's bulk-retrieval methods with CCI scrolling ResultSet release 0.5

 - implement user-transactions (javax.resource.cci.LocalTransaction)

 - more Berkeley DB settings configurable via ra-deployment-descriptor (behaviour, sizes, path-locations)

 - more CCI interaction types, maybe other key/data types  --> which API to expose in the CCI interface ?

 - in JCA 1.5 utilize the LifeCycle and WorkManager for more sophisticated BDB management (deadlock detection, log-cleanup)

 - XA Transactions (BDB doesn't have it in the Java API yet..)

 - make chronological logger and log-viewer a separate project

What about Unix(es) ?
'In theory' it should be possible to:
  1) exchange the Berkeley DB native libraries (dll) for the Unix ones (.o, .so etc)
  2) set the LD_LIBRARY_PATH

Everything else in the RAR archives should remain as is.
Path-entries in the RA deployment descriptors must obviously be valid Unix-paths as well.
Any feedback on how this works on Linux, Solaris, ... is very welcome indeed!
In due time of course, tested Unix release will be provided as well.


Installation, General...


Berkeley DB Supported version: 4.1.25 (no encryption)

 - successfully tested on Win2k, WinNT


 - support encrypted version (... and thereby implement the adapters security contract)

 - test on Linux, Solaris, ...

 - XA Transactions

Java Connector Architecture JCA 1.0

successfully tested with these application servers:

 - Sun J2EE SDK 1.3.1 (Win2k)

 - Weblogic 7 (Win2k)

 - Weblogic 6.1 (Win2k)

 - JBoss 3.0.6 (Win2k)


Weblogic 8.1, Orion, Oracle AS 9.0.2, SUN ONE AppServer 7

JCA 1.5

 - supports J2EE SDK 1.4 Beta (Win2k)


 - JBoss 4