atomikos-essentials tweaked to load in an OSGi container
Java
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
com.atomikos.transactions.api
com.atomikos.transactions.jdbc
com.atomikos.transactions.jms
com.atomikos.transactions.jta
com.atomikos.transactions
com.atomikos.util
.gitignore
README
build.xml
license.html
license.txt
notice.txt

README

atomikos-essentials transaction manager version 3.5.8 repackaged and tweaked for OSGi
-------------------------------------------------------------------------------------

This is a friendly fork of atomikos-essentials-3.5.8 to work on making the open-source transaction manager support OSGi.
Here is how this project was created:
- register on http://atomikos.com
- download the sources.
- modify the build.xml file found there. here it is: http://github.com/hmalphettes/atomikos-essentials-3.5.8-osgified-sandbox/blob/master/build.xml
- call the new target "sources" in the build.xml file of the downloaded atomikos sources.
- make a new eclipse PDE plugin project for each one of the *-sources.jar
- edit the MANIFEST.MF of each of the plugin till it compiles correctly.
- once happy copy the new manifest entries back into the original build.xml
- edit the version number in build.properties. make sure it is not ending with "-modified-locally" as that prevents eclipse from loading the jars as bundles. use 3.5.8.1 for example
- regenerate the jars: ant jars

All required external dependencies were imported as OSGi bundles through the PDE.
They were found on spring's maven repository of OSGi bundles:
http://www.springsource.com/repository/app/

This a work in progress:
- the hibernate plugins have not been processed that way yet.
- the jms bundle has not been tested.
- in fact this has been tested with one test-case: http://github.com/intalio/hightide-on-osgi/blob/master/org.eclipse.jetty.hightide.testjndi/META-INF/MANIFEST.MF


Bug:
----
each MANIFEST.MF has the entry:
"Bundle-ClassPath: bin/,."
This is a workaround not sure why it was needed for me but it must not be used one the jars are actually built.