AccessPlatform : Compatibility

There are two aspects to compatibility that we discuss here. The compatibility between DataNucleus plugins, and the compatibility of DataNucleus with third party software.

Plugin Compatibility

If you download one of the DataNucleus AccessPlatform distribution zip files you get a consistent set of DataNucleus plugins. Alternatively you can inspect the Maven "POM" files in Maven Central repository to see the dependency requirements. For the record the latest released versions of the following plugins are all consistent.

datanucleus-core 4.1.14

datanucleus-api-jdo 4.2.4
datanucleus-api-jpa 4.1.13
datanucleus-api-rest 4.2.2

datanucleus-cassandra 4.1.0.release
datanucleus-excel 4.1.0.release
datanucleus-hbase 4.1.1
datanucleus-json 4.1.1
datanucleus-ldap 4.1.0.release
datanucleus-mongodb 4.1.0.release
datanucleus-neo4j 4.1.1
datanucleus-neodatis 4.1.0.release
datanucleus-odf 4.1.0.release
datanucleus-rdbms 4.1.16
datanucleus-xml 4.1.0.release

datanucleus-geospatial 4.1.0.release
datanucleus-jodatime 4.1.1
datanucleus-guava 4.1.3
datanucleus-java8 4.2.3

datanucleus-cache 4.0.4

datanucleus-jdo-query 4.2.1
datanucleus-jpa-query 4.0.5

datanucleus-maven-plugin 4.0.3
datanucleus-eclipse-plugin 4.0.0.release

javax.jdo 3.2.0.m3

Third Party Compatibility

We aim to make DataNucleus AccessPlatform as compatible with related software as possible. Here we give an overview of known compatibilities/problems

Software Status
GraniteDS Fully compatible from GraniteDS 2.0+
Scala Fully compatible. If you want to use "SBT" you may benefit from the following links. SBT and Enhancing, SBT and MetaModel generation
Play Framework Fully compatible with version 2.0 or later. Version 1 of Play had a hardcoded Hibernate implementation which was obviously a bad idea when the whole point of having a persistence standard (JPA) is to allow portability.
GWT Current versions of GWT (2+) ought to be able to serialise/deserialise any detached JDO/JPA objects. Earlier GWT versions had a problem with a bytecode enhancement field of type Object[] and there was a project GILEAD that attempted to handle this for various persistence solutions (and in version 1.3 will have specific support for DataNucleus, already in Gilead SVN). Also look at this and this.
iReport v5 Fully compatible, but you could consider removing the following iReport-5.0.0/ireport/modules/ext/commons-dbcp-1.2.2.jar and iReport-5.0.0/ireport/modules/ext/*hive* as they have been found by some to cause conflicts.
Spring DataNucleus is a fully compliant JDO/JPA implementation, so should work with anything that purports to support standards.
Wicket Fully compatible. See this and this for tutorials with JDO, and follow the general Wicket JPA guide when using the JPA API.