Category    JHipster

Migrating From Hibernate To EclipseLink On JHipster

by Olivier Barais     JHipster Hibernate EclipseLink Diversity

Posted 2018.07.18 — Stockhoml, Sweden

Working on automatic library substitution.

We are currently working with Orange on a software diversification project. In this framework, we study the ability to automatically migrate a project from one dependency to another in order to understand the difficulties in practice. To understand these difficulties, we study a nominal case that should work perfectly. The replacement of an implementation of one JSR by another on a real project.

What is JSR?

The Java Community Process (JCP), established in 1998, is a formalized mechanism that allows interested parties to develop standard technical specifications for Java technology. The JCP involves the use of Java Specification Requests (JSRs) – the formal documents that describe proposed specifications and technologies for adding to the Java platform. A JSR defines a common contract for a given concern in the Java community.

Among the JSRs, we study the use of the JSR 338: JPA. This JSR provides a common framework for relational database access using relational object mapping techniques in Java. Many libraries implement this JSR including the famous hibernate library or the no less known eclipselink. On top of this API, higher level libraries like Spring-data have been built and are commonly used in enterprise projects.

From this common contract, the promise is to be able to change implementation at relatively low cost.

Let us have a look at the reality

Read More