Thursday Jun 28, 2012

EclipseLink 2.4 Released: RESTful Persistence, Tenant Isolation, NoSQL, and JSON

EclipseLink 2.4 is released as part of Eclipse Juno release train. In addition to providing the Reference Implementation for JPA 2.0, the key features in the release are:

  • RESTful Persistence - Expose Java Persistence units over REST using either JSON or XML
  • Tenant Isolation - Manage entities for multiple tenants in the same application
  • NoSQL - NoSQL support for MongoDB and Oracle NoSQL
  • JSON - Marshaling and unmarshaling of JSON object
Eclipse Link 2.4

Here is the complete list of bugs fixed in this release. The landing page provide the complete list of documentation and examples. Read Doug Clarke's blog for a color commentary as well.

This release is already integrated in the latest GlassFish 4.0 promoted build.

Try the functionality and give us feedback at GlassFish Forum or EclipseLink Forum.

Monday Apr 09, 2012

JPA and NoSQL using EclipseLink - MongoDB supported

EclipseLink 2.4 has added JPA support for NoSQL databases, MongoDB and Oracle NoSQL are the first ones to make the cut. The support to other NoSQL database can be extended by adding a EclipseLink EISPlatform class and a JCA adapter.

EclipseLink and NoSQL

A Java class can be mapped to a NoSQL datasource using the @NoSQL annotation or <no-sql> XML element. Even a subset of JPQL and the Criteria API are supported, dependent on the NoSQL database's query support. The connection properties are specified in "persistence.xml".

A complete sample showing how JPA annotations are mapping and using @NoSQL is explained here. The MongoDB-version of the source code can also be checked out from the SVN repository.

EclipseLink 2.4 is scheduled to be released with Eclipse Juno in June 2012 and the complete set of supported features is described on their wiki. The milestone and nightly builds are already available.

Do you want to try with GlassFish and let us know ?

Friday Mar 09, 2012

Tab Sweep - Upcoming JPA in NetBeans, JCP voting, Java EE and more....

Recent Tips and News on Java, Java EE 6, GlassFish & more :

Radio Receiver

Inside Oracle's Java Magazine (YouTube)
NetBeans JPQL and named queries support (NetBeans.org)
JSR 356 WebSocket Review Ballot results (jcp.org)
Why we vote “Yes” for JSR 331, JSR 354 and JSR 355 (London Java Community)
QCon Report - Day One (JAXenter)
JavaEE6 and the Ewoks (Developer Chronicles)
How to Create a New JSF Project (Pack Publishing)

Thursday Jan 26, 2012

What's up with EclipseLink?

EclipseLink's Shaun Smith has recently been delivering a number of presentations on the status and future of the open source project. If you're curious about where innovative JPA projects are going, then you should check out this slide deck from Shaun.

ALT_DESCR

Here are the main themes covered:

REST: integration with JAX-RS to access relational data through REST with HTML 5 as the primary client with possibly JPA entities and persistence units defined via metadata with dynamic provisioning (i.e. no Java coding required).
EclipseLink NoSQL: annotations (@NoSql) and XML to identify NoSQL stored entities with initial support for MongoDB and Oracle NoSQL.
Multitenancy: already present in the shipping version of EclipseLink using the @Multitenant annotation and supporting different topologies with dedicated or shared application and/or database.

Next stop: EclipseLink 2.4 along with the June Juno Eclipse Release.

Tuesday Jan 24, 2012

New in JPA 2.1 Early Draft

Java EE 7 is moving along nicely at the speed of its various JSRs and Arun has a rundown of the new features planned for JPA 2.1 as described in the recent Early Draft document.

ALT_DESCR

The blog entry covers Stored Procedures (similar to named queries, defined on the entities themselves), bulk operations, new FUNCTION, ON, TREAT JPQL keywords, more alignment with CDI and unsynchronized persistence context.

There are more features planned for JPA 2.1 that didn't get in the early draft (such as multi-tenancy). As a reminder, EclipseLink is the reference implementation (RI) for this specification while GlassFish 4.0 will deliver the overal Java EE 7 RI.

Monday Sep 19, 2011

JPA Maven Plugin - request for feedback

Laird Nelson, a regular poster on the GlassFish forums and a prolific bug reporter (thank you!) recently released a JPA Maven Plugin.

The idea is to generate a .properties file with JPA entities and optional parameters which Maven can later use as a filter to simplify testing of JPA code.

ALT_DESCR

Version 0.9.0 of the plugin is now on Maven Central and Laird is looking for feedback. The issue tracker is here.

Tuesday Jun 28, 2011

Eclipse Multitenancy. Now with a screencast.

As a follow-up to the previous EclipseLink's mutitenancy blog post, the recent Eclipse Indigo release train and the recent GlassFish Podcast interview on EclipseLink, we now have a short screencast showing it all in action.

You can also find it on the GlassFish YouTube Channel.

JPA Multitenancy

The scenario is pretty simple with two simple and identical web applications deployed with different tenant identifiers via persistence.xml customization (just one of the means of identifying tenants with EclipseLink). Hopefully this'll help people understand what Java EE 7 multitenancy might look like.

Sunday Jun 19, 2011

EclipseLink does multitenancy. Today.

So you heard Java EE 7 will be about the cloud, but that didn't mean a whole lot to you. Then it was characterized as PaaS, something in between IaaS and SaaS. And finally it all became clear when referenced as support for multitenancy. Or did it?

EclipseLink @Multitenancy

When it comes to JPA and persistence is general, multitenancy is defined as the ability to share a database schema among various groups of users (i.e. tenants). This means that there is no database setup or reconfiguration required as the data is co-located in the same database.

EclipseLink 2.3 (the Indigo train release) let's you do just that by supporting tenant discriminator column(s) via annotations or XML with applications providing values for these discriminators via an API or PU configuration. Check out details here.

EclipseLink 2.3 is scheduled to be the default and supported JPA provider for GlassFish 3.1.1. Another nice feature of this release is the ability to extend persistence units on the fly. The GlassFish Podcast has an interview up with EclipseLink's Doug Clarke.

Expect more on multitenancy across the Java EE spectrum as the specification work progresses.

Update: a screencast is now available.

Thursday Jun 02, 2011

EclipseLink discussion over at the GlassFish Podcast

What is the reference implementation for JPA 2.0? What is the difference between TopLink and EclipseLink? Where is the project being used outside of GlassFish? How is the project run at Eclipse? Anything done for PaaS and multi-tenancy? What is MOXy?

Is you're asking yourself any of those questions, you'll find answers in the latest episode of the GlassFish Podcast, an interview with Doug Clarke.

The podcast is accessible via iTunes or its main webpage.

Doug Clarke

Monday May 30, 2011

EclipseLink @ DZone Refcard

The latest DZone cheat sheet covers EclipseLink, the JPA 2.0 reference implementation and GlassFish JPA provider. As often the case, this 6-pager is loaded with useful content.

Eclipse DZone Redcard

From intro (did you know that EclipseLink was the reference implementation for SDO or that EclipseLink ships as a single JAR file?) to Maven, OSGi, Weaving in JavaSE, eclipse-orm.xml, fetch groups, cache configuration and much more, it's amazing how much great stuff Gordon was able to cover in this short document.

Keep an eye on the GlassFish Podcast later this week for an episode featuring a discussion with Doug Clarke on EclipseLink.

Tuesday Mar 29, 2011

JavaEE 7 transparency: JSRs as open projects on java.net

With a good number of JavaEE 7 JSRs officially started after a successful EC vote, it's time to finalize expert groups and actually get to work! To do that, every JSR with Oracle as a spec lead (including the umbrella Java EE 7) will be driven in the open on java.net.

Being a project on java.net will have the USERS mailing lists serve as "reflectors" of the expert group lists and also allow list members to post among themselves. The issue tracker (now Jira-based), the wiki and the download area are also all available for each project to use as they see fit.

ALT DESCR

Here is the list of projects created so far :
http://jax-rs-spec.java.net (JAX-RS 2.0)
http://jpa-spec.java.net (JPA 2.1)
http://jms-spec.java.net (JMS 2.0)
http://javaee-spec.java.net (Java EE 7)
http://jsf-spec.java.net (JSF 2.2)
http://el-spec.java.net (EL 3.0)
http://servlet-spec.java.net (Servlet 3.1)

As you can see the pattern is pretty easy to follow and should let you find your way to the other spec/projects not yet created such as EJB. To either view the archives or join the users list, you first need to become a java.net member if you are not one already. To become a project member simply click on "Bookmark This Project".