Discussions

News: JPOX becomes DataNucleus, Releases Access Platform 1.0 M1

  1. The open source Java persistence platform Java Persistent Objects (JPOX) has become DataNucleus for its future direction due to the significant changes in scope of the project since its initiation. JPOX started as an ORM providing JDO1 persistence to RDBMS. It later added support for JDO2, JDO2.1 and JPA1 compliance as well as supporting persistence to the db4o object datastore. It had ceased to be "just an ORM". DataNucleus extends the scope to the application data management domain intent on supporting a wide range of datastores, APIs, services, as well as eventually providing data analysis tools. DataNucleus products are Apache 2 licensed. JPOX development will continue but only for the 1.2 maintenance cycle currently. The baseline DataNucleus product is DataNucleus AccessPlatform, providing persistence to RDBMS, db4o, XML, LDAP and Excel datastores via JDO or JPA APIs. Moreover AccessPlatform allows a user to define their persistence using JDO XML/annotations or JPA XML/annotations and then utilise either the JDO or JPA API for persistence (no matter which persistence definition was used), and allow persistence to the full range of datastores. It is intended to also provide complete JDOQL/JPQL support for all supported datastores in the course of time. DataNucleus Access Platform 1.0 ("Faraday") Milestone 1 takes the JPOX codebase and extends it with the following 1. Support for persistence of Java objects to LDAP via JDO/JPA APIs. 2. Support for basic JDOQL querying of objects stored in LDAP via JDO. 3. Support for persistence of Java objects to Excel via JDO/JPA APIs, utilising Apache POI. 4. Support for basic JDOQL querying of objects stored in LDAP via JDO, utilising JAXB. 5. Support for basic persistence of Java objects to XML via JDO/JPA APIs. 6. Support for SQL querying of objects stored in db4o via JDO/JPA APIs. DataNucleus Access Platform additionally allows interchangeable use of JDO XML/annotations or JPA XML/annotations with either JDO or JPA API (whatever metadata input), persisting to any of the supported list of datastores. This provides a level of flexibility not seen in other Java persistence tools. Thanks go to Nightlabs for our continued site hosting, and to SourceForge for providing source code facilities.

    Threaded Messages (13)

  2. I'm still missing Maven 2-support for JPOX. Before that is done, I don't care what it's called. :) Jokes aside, all our projects are Mavenized so it's a bitch when something new and exciting comes around that isn't...
  3. Re: M2[ Go to top ]

    I'm still missing Maven 2-support for JPOX. it's a bitch when something new and exciting comes around that isn't...
    Errrrm JPOX has had an M2 plugin since JPOX 1.1.7 (April 2007 ... now reaching its 1st birthday!). DataNucleus also has an M2 plugin http://sourceforge.net/project/showfiles.php?group_id=222750&package_id=273219 If instead you're referring to presence of jars in IBiblio M2 repo, then you could easily just add JPOX/DataNucleus own M1 repo to your M2 projects as a valid repo (M2 supports M1 style repos IIRC). Anything more than that and you could easily raise a JIRA and contribute your time to help :-)
  4. Re: M2[ Go to top ]

    Errrrm JPOX has had an M2 plugin since JPOX 1.1.7
    Yes, I know that.
    If instead you're referring to presence of jars in IBiblio M2 repo, then you could easily just add JPOX/DataNucleus own M1 repo to your M2 projects as a valid repo (M2 supports M1 style repos IIRC).
    I also know that JPOX have a M1 repo but I didn,t know that you can use M1 repos in M2. Thanks for that.
    Anything more than that and you could easily raise a JIRA and contribute your time to help :-)
    I saw that one coming for a mile... :D
  5. Re: M2[ Go to top ]

    There's even a doc for that ;-) http://www.datanucleus.org/guides/maven2/index.html
  6. Re: M2[ Go to top ]

    There's even a doc for that ;-)
    http://www.datanucleus.org/guides/maven2/index.html
    Thanks for that link! :) I've searched the JPOX site and forums before but was unable to find this information.
  7. Congratulations! I was always impressed by consistent development of JPOX over the years, no matter what. The fact that DataNucleus remains Apache2-licensed contributes to my personal respect to Andy & Eric.
  8. LDAP Support[ Go to top ]

    First of all congrats to the JPox team! I'm glad that you are moving forward! I'm curious for LDAP persistence support... AFAIK LDAP is not transactional... how does JDO/EJB3.JPA implementation does implement transactions? Thanks in advance for your reply!
  9. Re: LDAP Support[ Go to top ]

    First of all congrats to the JPox team! I'm glad that you are moving forward!

    I'm curious for LDAP persistence support... AFAIK LDAP is not transactional... how does JDO/EJB3.JPA implementation does implement transactions?

    Thanks in advance for your reply!
    two options: compensate the transaction on rollback or delay operations until commit
  10. Re: LDAP Support[ Go to top ]

    two options: compensate the transaction on rollback or delay operations until commit
    Thank you Erik, but what would happen if: - Option 1: compensate the transaction on rollback: What if compensate execution failed? - Option 2: delay operations until commit: What if one of the delayed operations (lets say "a", "b" and "c") failed? E.g. operations "a" and "b" went fine, but "c" failed?
  11. Re: LDAP Support[ Go to top ]

    Just a guess: in option 1 you are left without compensation transaction. Option 2 leaves you with a and b committed only. Generally, you wouldn't get ACID from the datastore which is not ACID, no matter what data access abstraction you use on top of it. I'd be happy to be wrong on this.
  12. Re: LDAP Support[ Go to top ]

    Generally, you wouldn't get ACID from the datastore which is not ACID, no matter what data access abstraction you use on top of it.
    Yes. That is my understanding too. I'm kind of puzzled how LDAP is "supported" then... It propagates its non-transactional nature to the whole stack of the application persistence technologies...
  13. Re: LDAP Support[ Go to top ]

    That is my understanding too. I'm kind of puzzled how LDAP is "supported" then... It propagates its non-transactional nature to the whole stack of the application persistence technologies...
    Persistence to LDAP via JDO or JPA APIs is supported. DataNucleus clearly cannot invent some ACID transaction capability without controlling the datastore. That doesn't mean that persistence and querying on that datastore is not supported, just that ACID transactions are not. In the same way there are RDBMS out there that do not support the full range of transaction isolation levels ... and we support those datastores.
  14. Re: LDAP Support[ Go to top ]

    DataNucleus clearly cannot invent some ACID transaction capability without controlling the datastore. That doesn't mean that persistence and querying on that datastore is not supported, just that ACID transactions are not. In the same way there are RDBMS out there that do not support the full range of transaction isolation levels ... and we support those datastores.
    Andy