DataNucleus Access Platform

Software Screenshot:
DataNucleus Access Platform
Software Details:
Version: 4.0.4
Upload Date: 17 Feb 15
Developer: DataNucleus
Distribution Type: Freeware
Downloads: 4

Rating: nan/5 (Total Votes: 0)

DataNucleus Access Platform is an open source, freely distributed and platform-independent software that provides data persistence and retrieval to various of data stores using various APIs, with a range of query languages.

Supported APIs, datastores and query languages

Among the supported APIs (Application Programming Interfaces), we can mention JDO (JDO1, JDO2, JDO2.1, JDO2.2, JDO3, JDO3.1) and JPA (JPA1, JPA2, JPA2.1). Supported datastores include RDBMS, db4o, LDAP, Excel, XML, NeoDatis, and JSON.

On the other hand, DataNucleus Access Platform supports various query languages, including JDOQL, JPQL, SQL, db4o Native, NucleusSQL, and NeoDatis Criteria. If you want JDO3.x and JPA2.0 you should use DataNucleus version 4.x, and if you want JDO3.x and JPA2.1 you should use DataNucleus version 3.x.

Includes a wide variety of extensions

Thanks to its powerful plugin architecture, DataNucleus Access Platform’s default functionality can be easily extended through extensions. A wide variety of extensions are available on the project’s website (see link at the end of the article), where you can see information about each one.

Among these, we can mention Java types, Level 1/2 cache, annotations, JTA locator, ClassLoader resolvers, store manager, XML MetaData handler, value generator, JMX management, autostart mechanisms, persistence properties, and connection factory.

Additionally, the query language, identity string translator, datastore identity, XML metadata entity resolver, type converters, store manager, member annotation handler, identity key translator, query cache, query methods and class annotation handler extensions are also available.

Under the hood and supported operating systems

Being written in the Java programming language, DataNucleus is independent of an operating systems, as it supports GNU/Linux, BSD, Solaris, Microsoft Windows and Mac OS X operating systems. Both 64-bit and 32-bit computer platforms are supported at this time.

What is new in this release:

  • Auto-generate MANIFEST.MF OSGi information using Maven bundle plugin
  • Change use of StringBuffer to StringBuilder for efficiency
  • Add fix to enhancement contract for JDK1.7+ for getter when using persistence properties
  • Add support for in-memory query evaluation of String.concat
  • Provide fallback API for runtime enhancement
  • Add metadata checks for some common primary-key specification errors
  • Support persistence of StringBuilder fields
  • JPA : Fix Criteria FromImpl getJoins/getFetches to return empty set when null
  • XML : restructured to allow potential of using different JAXB implementations internally
  • XML : add support for XML indentation formatting
  • Cache : upgraded Coherence support to 3.6+
  • RDBMS : support added for query range in datastore for Derby, SQLServer 2012, Firebird
  • RDBMS : support added for sequences with SQLServer 2012
  • RDBMS : support added for M-N relations using ordered lists
  • RDBMS : fixes to schema creation for M-N relations
  • RDBMS : support added for parameters with bulk-fetch feature
  • RDBMS : bulk-fetch support added for array fields
  • RDBMS : add ability to turn off bulk-fetch on a per-query basis
  • Geospatial : new plugin comprising merged spatial/awtgeom plugins
  • Geospatial : added some missing PostGIS methods and validated against latest PostGIS JDBC driver
  • MongoDB : improved handling of ordering/range parts of query to correct previous contribution
  • MongoDB : upgrade to use latest java driver
  • HBase : fix problem with retrieval of Enum stored as numeric (ordinal)
  • Various other bug fixes and minor improvements

What is new in version 3.3.5:

  • Wrap any exception thrown from JDOHelper.getObjectId so that it meets the JDO spec
  • Fix to class loading for property validators for OSGi
  • Couple of fixes for optimistic relationship management
  • JDO : Change PMF to be Serializable
  • JPA : Change EMF and CriteriaQuery to be Serializable
  • JPA : Fix criteria CONCAT support to give correct JPQL string form
  • JPA : Add support for IN with criteria queries via CriteriaBuilder
  • JPA : Add support for JPQL "TREAT" in WHERE clause
  • RDBMS : Add support for bulk fetch of multi-valued collection fields of a candidate when in FetchPlan of a query (removes "1+N" problem)
  • RDBMS : Add support for SQLServer to handle JDOQL String.substring with 2 args (Daniel Dai)
  • RDBMS : Add support for JDOQL String.concat (Daniel Dai)
  • RDBMS : Fix to detection of type of backing store required for a collection, using metadata more
  • MongoDB : Add support for specifying the MongoOptions when creating the first connection (Robin Zhang)
  • Spatial : Fix some missing PostGIS methods
  • Various other bug fixes and minor improvements

What is new in version 3.2.9:

  • Wrap any exception thrown from JDOHelper.getObjectId so that it meets the JDO spec
  • Fix to class loading for property validators for OSGi
  • Couple of fixes for optimistic relationship management
  • JDO : Change PMF to be Serializable
  • RDBMS : Add support for bulk fetch of multi-valued collection fields of a candidate when in FetchPlan of a query (removes "1+N" problem)
  • RDBMS : Add support for SQLServer to handle JDOQL String.substring with 2 args (Daniel Dai)
  • RDBMS : Add support for JDOQL String.concat (Daniel Dai)
  • RDBMS : Fix to detection of type of backing store required for a collection, using metadata more
  • MongoDB : Add support for specifying the MongoOptions when creating the first connection (Robin Zhang)
  • Spatial : Fix some missing PostGIS methods
  • Some other bug fixes and minor improvements

What is new in version 3.2.8:

  • Metadata : Add level of locking to metadata load process to assist in multithreaded environments
  • Metadata : fix bug in OrderMetadata for multithreaded environments
  • Fix to some potential startup problems with ExecutionContext/ObjectProvider in multithreaded environments
  • Change "datanucleus.SerializeRead", "datanucleus.cache.collections", "datanucleus.deletionPolicy", "datanucleus.query.jdoql.allowAll", "datanucleus.query.sql.allowAll" to be overrideable on the PM/EM
  • Cache : update javax.cache support to "1.0-PFD" standard
  • RDBMS : Fix to persistence of bidirectional 1-N with Set
  • RDBMS : Change backing stores to be one per field and be thread-safe
  • RDBMS : Support for more boolean expressions in result clause for JDOQL/JPQL
  • RDBMS : Support for persisting a field serialised into a local file
  • RDBMS : Support for persisting a File type field streamed to/from datastore
  • RDBMS : Upgrade "datasource" plugin point to be "connectionpool", adding more capabilities
  • Neo4j : support for persistence of map fields (Map, Map)
  • Neo4j : support for using embedded database with user-provided configuration properties
  • Neo4j : support for access to underlying Cypher query for a JDOQL/JPQL query
  • MongoDB : support for query evaluation of several String methods in-datastore (Marcin Jurkowski)
  • MongoDB : support for query evaluation of Collection.contains in-datastore (Marcin Jurkowski)
  • MongoDB : fix to retrieval of class version field (Marcin Jurkowski)
  • MongoDB : support for query literals of type Character
  • Some other bug fixes and minor improvements

What is new in version 3.3.4:

  • Metadata : Add level of locking to metadata load process to assist in multithreaded environments
  • Metadata : fix bug in OrderMetadata for multithreaded environments
  • Fix to some potential startup problems with ExecutionContext/ObjectProvider in multithreaded environments
  • Change "datanucleus.SerializeRead", "datanucleus.cache.collections", "datanucleus.deletionPolicy", "datanucleus.query.jdoql.allowAll", "datanucleus.query.sql.allowAll" to be overrideable on the PM/EM
  • Cache : update javax.cache support to "1.0-PFD" standard
  • JPA : Fix to metamodel Attribute.isOptional to return false for PK fields
  • RDBMS : Fix to persistence of bidirectional 1-N with Set
  • RDBMS : Change backing stores to be one per field and be thread-safe
  • RDBMS : Support for more boolean expressions in result clause for JDOQL/JPQL
  • RDBMS : Support for persisting a field serialised into a local file
  • RDBMS : Support for persisting a File type field streamed to/from datastore
  • RDBMS : Upgrade "datasource" plugin point to be "connectionpool", adding more capabilities
  • Neo4j : support for persistence of map fields (Map, Map)
  • Neo4j : support for using embedded database with user-provided configuration properties
  • Neo4j : support for access to underlying Cypher query for a JDOQL/JPQL query
  • MongoDB : support for query evaluation of several String methods in-datastore (Marcin Jurkowski)
  • MongoDB : support for query evaluation of Collection.contains in-datastore (Marcin Jurkowski)
  • MongoDB : fix to retrieval of class version field (Marcin Jurkowski)
  • MongoDB : support for query literals of type Character
  • Various other bug fixes and minor improvements

What is new in version 3.2.7:

  • JPA : fix to metamodel SimpleAttributeImpl.isVersion (Adrian Ber)
  • JPA : add support for multi-field join syntax in JPQL FROM clause
  • JPA : update to handling of JPQL range when just first result set
  • RDBMS : fix for SQLServer schema name problem (Shanyu Zhao)
  • RDBMS : add support for using FetchPlan when querying over "complete-table" candidate (previous just retrieved primary key)
  • RDBMS : improvement in process to determine class name when no subclasses known about, to avoid SQL
  • RDBMS : support for persisting Double type into SQLServer FLOAT datastore type (Shuaishai Nie)
  • JSON : fix to retrieval of objects in query so that application-identity cases have id assigned
  • MongoDB : add support for query ordering being processed in the datastore (Marcin Jurkowski))
  • Rename "google-collections" plugin to "guava"
  • JDO : distribute jdo-api 3.1-rc1
  • Some other bug fixes and minor improvements

What is new in version 3.3.3:

  • JPA : fix to metamodel SimpleAttributeImpl.isVersion (Adrian Ber)
  • JPA : add support for multi-field join syntax in JPQL FROM clause
  • JPA : update to handling of JPQL range when just first result set
  • JPA : support inherited TypeConverters (Adrian Ber)
  • JPA : pass properties from EMF to ClassTransformer when run in managed mode
  • RDBMS : fix for SQLServer schema name problem (Shanyu Zhao)
  • RDBMS : add support for using FetchPlan when querying over "complete-table" candidate (previous just retrieved primary key)
  • RDBMS : improvement in process to determine class name when no subclasses known about, to avoid SQL
  • RDBMS : support for persisting Double type into SQLServer FLOAT datastore type (Shuaishai Nie)
  • JSON : fix to retrieval of objects in query so that application-identity cases have id assigned
  • MongoDB : add support for query ordering being processed in the datastore (Marcin Jurkowski))
  • Rename "google-collections" plugin to "guava"
  • JDO : distribute jdo-api 3.1-rc1
  • Various other bug fixes and minor improvements

What is new in version 3.3.0 Milestone 1:

  • Mapping : cater for inheritance with (multiple) MappedSuperclass part way down tree but with superclass Entity with own table (i.e effectively @MappedSubclass)
  • SchemaTool : support properties file and/or System props overriding persistence.xml
  • Simplify internal metadata storage for fetch groups and constraints
  • Rename "datanucleus.metadata.validate" persistence property to "datanucleus.metadata.xml.validate"
  • Add "datanucleus.metadata.xml.namespaceAware" to allow control over use of XML namespaces
  • Fix to operation queue for Map remove operations
  • Add check on specification of discriminator value for abstract classes
  • JPA : Support more situations
  • JPA : run against JPA 2.1 API jar
  • JPA : Support JPA 2.1 Index and ForeignKey specification
  • JPA : Support JPA 2.1 JPQL "FUNCTION"
  • JPA : Support JPA 2.1 Criteria UPDATE/DELETE
  • JPA : Support JPA 2.1 FROM "ON" in Criteria query
  • JPA : Drop support for DN extension @Index annotation (use JPA 2.1 annotation now)
  • RDBMS : Schema Generation improvement to better cater for any ordering of input classes
  • RDBMS : Schema Generation fix to recursive initialisation of PK of a table
  • RDBMS : Fix to handling of FK Map where key/value have inheritance and the value/key is stored in a superclass
  • RDBMS : Fix to value-map discriminator handling for embedded object
  • RDBMS : add ability to invoke any SQL function (for JPA 2.1)
  • MongoDB : fix to explicitly specify the storage type for primitive wrapper types
  • Various minor bug fixes and improvements

What is new in version 3.2.0:

  • Fix to in-memory evaluation when using a variable that has no possible value
  • Move operation queue for SCOs to ExecutionContext so that it can control the whole flush process
  • Disable ObjectProvider pooling since it currently causes issues when in a highly multithreaded environment
  • Add check on attempted persistence of final fields
  • JPA : allow for user overriding a JNDI datasource with a URL-based datasource
  • RDBMS : fix to bulk update when setting fields to NULL
  • RDBMS : Cater for fields of a type that have a TypeConverter but no Mapping defined, falling back to the TypeConverter
  • Neo4j : Support for bulk delete
  • MongoDB : Support for bulk delete
  • HBase : Support for bulk delete
  • Version 3.2 includes the following major changes over 3.1:
  • The enhancer and ASM are now merged into datanucleus-core
  • L2 caching of embedded/serialised fields now defaults to ON
  • ExecutionContext objects are now pooled, together with various other improvements for performance
  • Enhancer now includes an option to enhance classes as detachable regardless of metadata
  • Neo4j : now uses a single connection per PM/EM
  • Neo4j : now supports bulk delete
  • MongoDB : now uses a single connection per PM/EM
  • MongoDB : now supports bulk delete
  • HBase : supports various extensions for bloom filters, compression, in-memory etc (Nicolas Seyvet)
  • HBase : now supports bulk delete
  • RDBMS : support added for the Virtuoso database (Emmanuel Poitier)
  • RDBMS : support added for Tomcat connection pool (Marshall Reeske)
  • OSGi : improved deployability due to dependency version restrictions
  • JPA : validated to work with JBoss 7 (thanks to Nicolas Seyvet and Scott Marlow)
  • JPA : access of non-detached field will result in IllegalAccessException instead of the previous JDO exception
  • JPA : support for JPA2.1 FROM "ON" clauses
  • JPA : support for bulk usage of persist(), remove(), merge() and detach() (pass in Collection or array of entities)
  • JPA : support for JPA2.1 "Generate Schema" feature
  • If a type is supported to be persistent then it defaults to persistent now (no need to mark all non-standard typed fields as persistent).
  • Add ability to disable the L2 cache on a PM/EM-basis where the PMF/EMF has it enabled.
  • Cache : provides support for javax.cache v0.61
  • Many bug fixes, and minor feature additions.

Requirements:

  • Java 2 Standard Edition Runtime Environment

Screenshots

datanucleus-access-platform_1_69647.jpg
datanucleus-access-platform_2_69647.jpg
datanucleus-access-platform_3_69647.jpg
datanucleus-access-platform_4_69647.jpg
datanucleus-access-platform_5_69647.jpg

Similar Software

libsqljdbc-auth
libsqljdbc-auth

3 Jun 15

Metabase
Metabase

11 May 15

EasyDB
EasyDB

14 Apr 15

Reportico
Reportico

19 Feb 15

Comments to DataNucleus Access Platform

Comments not found
Add Comment
Turn on images!