BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News JakartaOne 2019: Livestream 7am to 1pm Summary

JakartaOne 2019: Livestream 7am to 1pm Summary

This item in japanese

Bookmarks

The inaugural JakartaOne Livestream global virtual conference, scheduled in conjunction with the formal release of Jakarta EE 8, went live on September 10th, 2019 at 7am EDT with the first of 19 one-hour sessions. Focused on Jakarta EE and MicroProfile-related topics, these sessions included keynotes, demos and panel discussions delivered by an all-star cast of Java luminaries.

The JakartaOne program committee, led by program chair Reza Rahman, principal program manager, Java on Azure at Microsoft, includes: Adam Bien, Java SE/EE freelancer and author of several books; Arun Gupta, principal open-source technologist at Amazon Web Services; Ivar Grimstad, Jakarta EE developer advocate at the Eclipse Foundation; Josh Juneau, application developer/system analyst at Fermilab; and Tanya Obradovic, Jakarta EE program manager at the Eclipse Foundation.

Opening Keynote

The opening keynote, scheduled after the first five one-hour sessions, was delivered by Mike Milinkovich, executive director at Eclipse Foundation, followed by a four-minute pre-recorded video message by James Gosling, distinguished engineer at Amazon Web Services and father of Java.

Milinkovich presented Welcome to the Future of Cloud Native Java to formally announce the release of Jakarta EE 8 and affirmed the future of cloud-native Java is with Jakarta EE. This new release delivers:

  • Full compatibility with Java EE 8
  • Open specifications
  • Open source TCK license and process
  • Compatible implementations
  • Platform integration requirement parity with Java EE 8
  • A fully transparent branding process

Milinkovich acknowledged the many contributions of 18 member organizations and approximately 160 new committers that produced 44 open source projects, 53 build instances, 129 GitHub repositories, and approximately 61.5m lines of code.

Looking ahead to Jakarta EE 9, Milinkovich proposed features that may include support for Java SE 11, the migration of javax.* namespace to jakarta.*, and removal of deprecated specifications.

In his four-minute video, Gosling discussed how ownership and rules around Java EE have changed, stating:

The governance model for Java EE has been fairly heavy handed for quite a few years and there were lots of reasons why, at various points, that actually made sense. But it was always very awkward for the community because it tended to be dominated by major industry players. While there are a lot of major industry players involved still, it's become a much leveler field for both producers and consumers of the Java EE standards.

Reaffirming the importance of community, Gosling stated:

It's all about the community and the ability of the community to interact with and guide the evolution of the standard because times are always changing. Things that are old become new again and things that are new become old. The wheel keeps turning and things keep evolving. And now that there are more parties at the table who are trying to guide that evolution, I think it's really going to be a really, really great thing.

Industry Keynote

Jakarta EE steering committee members representing Tomitribe, IBM, Payara, Oracle and Fujitsu participated in the industry keynote to present on behalf of their respective companies.

David Blevins, CEO at Tomitribe, presented Apache, Java EE and Jakarta EE Rebirth. During a 10-year time period (2004-2013) in which Apache had a Java EE license agreement, numerous projects such as Tomcat, TomEE, OpenWebBeans, Geronimo, and OpenJPA were launched. Other accomplishments included: an implementation of 30 specifications, 184 specification JAR releases across 12 projects, and 541 releases.

Blevins, a long-time contributor to all things Apache, stated that Tomitribe is “truly open like never before.” Tomitribe's continuous integration, issue tracking, and road maps, private from 2004-2013, are now open to the Java community. He announced that Tomitribe will be donating TCK testing resources to Apache projects that implements Jakarta EE and host infrastructure on their Amazon EC2 setup.

Ian Robinson, distinguished engineer at IBM, described how Java EE has historically been important to IBM. With the exception of operating systems, WebSphere, in existence for 21 years, has more implementations in production than any other IBM solution.

Robinson, a spec lead during the early days of Java, stated that Java EE has served the industry well for the past ten years. Application platforms that implemented Java EE have been able to move with the times -- until a few years ago -- when the industry started moving to cloud-based applications. He maintained that Java EE hadn't kept up with the applications migrating to the cloud.

Robinson announced that Open Liberty, in existence for only two years, is certified as Jakarta EE 8-compatible and that developers can benefit from both Jakarta EE and MicroProfile in their applications.

Steve Millidge, CEO at Payara, described Payara's relationship with Jakarta EE and their active membership in the MicroProfile, Jakarta EE and EE4J working groups. Jakarta EE enables Payara to access the open-source TCKs making it possible for Payara to be certified as Jakarta EE 8-compatible.

The significance of a new process-friendly Jakarta EE allows new vendors to join the Jakarta EE ecosystem. Payara, in existence since 2016, is a relatively new member in the Java community.

Payara's vision was to change the concept of a Java EE application server as Millidge explained:

Our vision was really to reshape what people's concept of an application server is and enable us to leverage a managed runtime to provide monitoring, scalability and thread management and all the things a managed runtime can do and take that and make it work on lots of different architectures. So we take the product and make it work best for different architectures so that developers can concentrate on the Jakarta EE APIs.

Millidge announced that an upcoming minor release of Payara Server 5.193 should be certified as Jakarta EE 8-compatible.

Will Lyons, senior director, WebLogic Server Product Management at Oracle, acknowledged the hard work by the Java community over the past two years, especially the Eclipse Foundation and the strategic members of Jakarta EE, to make the release of Jakarta EE 8 possible. Oracle is committed to Jakarta EE as Lyons stated:

It has been our intent to deliver Java EE technology and its sponsorship from the community to create a new brand and a new process which is flexible and open and compatible and we've done all of those. We have an open process, a compatible set of specifications, and a process for evolving this moving forward.

While the transfer technology from Oracle to the Eclipse Foundation took two years, Lyons maintained that this should not be a two-year process moving forward.

Looking ahead, Oracle plans to leverage Jakarta EE in Helidon, support Jakarta EE in an upcoming version of WebLogic, and support the cloud-native infrastructure.

Kenji Kazumura, senior professional engineer, Java development at Fujitsu, provided a comprehensive overview of Fujitsu's relationship with Java since 1996. Interstage Application Server, Fujitsu's flagship product, debuted in 1999 and is still in existence with its latest version 12 release.

Fujitsu joined the MicroProfile initiative in 2017 and released Launcher, Fujitsu's implementation of MicroProfile.

Highlighted Presentations

Jakarta EE for DummEEs presented by Kevin Sutter, MicroProfile and Java EE (EE4J) architect for WebSphere at IBM.

Sutter's presentation provided a brief history of Jakarta EE, an overview of the specifications, APIs, and TCKs, compatible implementations, and what's next for Jakarta EE.

Comparing the key points of the new Eclipse Foundation Specification Process (EFSP) and the Java Community Process (JCP), Sutter showed the chart below to demonstrate how the EFSP is more process-friendly:

The self-certification specification process requires the creation of a specification, corresponding Java docs, a test environment using the TCK, and a compatible implementation to demonstrate the specification is implementable.

Sutter announced that Open Liberty is now certified as Jakarta EE 8-compatible. Their TCK results are available to the Java community for review.

Jakarta EE 8 - An Overview of Features presented by Josh Juneau, application developer/system analyst at Fermilab.

Juneau provided a history of Java EE/Jakarta EE, an overview of the Jakarta EE specifications, and what is on the horizon for Jakarta EE.

Now governed by the Jakarta EE working group, Jakarta EE currently has 27 specifications. Juneau introduced each specification and described in more detail a few of the specifications with significant updates, such as Jakarta Contexts & Dependency Injection, Jakarta JSON Binding, and Jakarta JSON Processing.

The specifications were also renamed to reflect the Jakarta EE brand and comply with Oracle's branding requirements. For example, Java EE Context & Dependency Injection is now Jakarta Context & Dependency Injection, and Java EE JSON Binding is now Jakarta JSON Binding.

Juneau recommended a few ways to get started with Jakarta EE, namely:

Building Interoperable Microservices with Eclipse MicroProfile presented by Ivar Grimstad, Jakarta EE developer advocate at Eclipse Foundation.

Grimstad started his presentation with a brief history of MicroProfile, followed by how to get started building MicroProfile applications. In particular, he demonstrated the MicroProfile Starter project generating an application based on user inputs, such as the desired MicroProfile version, Java version, and runtimes such as Open Liberty, Payara, etc.

The three original MicroProfile APIs (CDI, JAX-RS, and JSON-P) are based on their respective JSRs. The remaining MicroProfile APIs (with the exception of JSON-B) were built by the Java community and based on the well-defined microservices design patterns. Grimstad demonstrated implementing some of the APIs such as Metrics, Config, Health Check, JWT Propagation, Open Tracing and Fault Tolerance.

Live Coding with Jakarta EE and MicroProfile: #slideless presented by Adam Bien, Java SE/EE freelancer and author of several books.

As the “#slideless” subtitle suggested, Bien's presentation was a full hour of live coding. He started with a simple application generated with the Maven archetype:generate plugin. From there, he built upon the application by implementing various MicroProfile and Jakarata EE APIs.

Bien introduced his own Watch and Deploy utility that monitors a project for changes in source code. Any code changes triggers a build and deploy to a defined Java runtime such as Payara, WildFly, etc. It is also possible to define more than one runtime in a defined .wadrc file. For example:

    
${LIBERTY_HOME}/usr/servers/defaultServer/dropins
${WILDFLY_HOME}/standalone/deployments
${PAYARA_HOME}/glassfish/domains/domain1/autodeploy
${TOMEE_HOME}/webapps
    

Bien launched this utility for his demos and referenced it from time-to-time to show file sizes and how a generated WAR file is deployed.

Kotlin+Jakarta EE+MicroProfile: Teaching 20-Year Old Tricks to a New Language presented by Victor Orozco, founder of Nabenik.

The intent of this presentation was to demonstrate how Kotlin may be a viable alternative to Java for building microservices applications. After a brief overview of Java frameworks and MicroProfile, Orozco focused on the 12 cloud-native factors (The 12 Factor-App) for this presentation, and reviewed his demo application using Kotlin, Jakarta EE and MicroProfile. This included initial setup, source code and testing that focused on Kotlin source code.

Orozco discussed the advantages and disadvantages of migrating to Kotlin. Advantages include: concise code; Java interoperability; opening the backend for new Android developers; and a new “full-stack” approach to applications development. Disadvantages include: a steep learning curve; slower compile time; thread-managed versus co-routines; and requires the ultimate edition IntelliJ IDEA for Kotlin support.

Several InfoQ Java editors will be collectively reporting on the entire 19-hour conference by each covering a portion of it.

Rate this Article

Adoption
Style

BT