While Waiting for Jakarta EE
It is more than a year since Oracle announced the transfer of Java™ EE to Eclipse Foundation at JavaOne 2017. Since then, a lot has happened:
- Java™ EE 8 API and implementation projects have been set up under EE4J.
- The Eclipse GlassFish 5.1 release is approaching.
- A brand new Jakarta EE specification process is right around the corner.
- Community shows involvement regarding the technical direction of Jakarta EE.
- The Jakarta EE NoSQL specification project proposal has been created.
This is all very good, excellent actually! When you think about the size of it all, it is actually quite an achievement. We are talking about 7.7 million lines of code! More than 60.000 files and a total of 38 new projects that have been set up at the Eclipse Foundation.
But, as everyone knows, developers are impatient and eager to try out everything new, so there are still a couple of questions that I always get when talking about Jakarta EE:
- When can I start developing Jakarta EE applications?
- How does Eclipse MicroProfile fit in this picture?
The answer to the first question is: “not yet”. Until the Jakarta EE specification process is finalized, the technologies are still Java™ EE.
The answer to the second question differs a little depending on who you ask, but usually is something in the lines of “I am pretty sure that some of the
MicroProfile specs will be integrated into Jakarta EE when they have proven to be useful”.
So, what should an eager developer do in the meantime? Switch to Spring Boot…ouch…or…JavaScript…squeal…?
NO, here is what you should do: Use the power of Java™ EE 8 and combine it with Eclipse MicroProfile.
Many of the application server vendors have added MicroProfile features to their Java™ EE 8 compliant or certified application servers. Examples are Open Liberty, WildFly, Payara and Apache TomEE. See the respective vendor’s documentation for which versions they have included.
I have put together a simple application called Jakarta EE Duke to demonstrate how to do this. The application uses the @ConfigProperty annotation from MicroProfile Config to configure a message as well as the new @Email annotation from Bean Validation 2.0, which came with Java™ EE 8 to validate input.
While this example is extremely simple, it does indicate how you can combine the full power of Java™ EE 8 with the lightweight APIs of MicroProfile to implement cloud-native microservices using Java™ technology.
One last tip: Make sure to join the Jakarta EE Community Mailing list to always stay up-to-date on the latest development of Jakarta EE.
Published on Java Code Geeks with permission by Ivar Grimstad, partner at our JCG program. See the original article here: While Waiting for Jakarta EE Opinions expressed by Java Code Geeks contributors are their own. |
Really nice article. Good job! Nevertheless there is something bothering – Java EE 8 compliant and certified servers? As of time of writing this comment (17.11.2018) there is only one list showing Java EE 8 compliant servers – here it is: https://www.oracle.com/technetwork/java/javaee/overview/compatibility-jsp-136984.html. I don’t know what you mean by certified and I was unable to find such a list, but according to Oracle the only “compliant” Java EE 8 servers (Full Platform and/or Web Profile) are Glassfish 5.0, IBM WebSphere Application Server Liberty Version 18.0.0.2 and Wildfly 14.x (Payara and Tom EE are not compliant as stated!). Notice the big… Read more »