sebastiandaschner blog

Jakarta EE And MicroProfile At CodeOne

sunday, october 07, 2018

At this year’s Oracle Code One conference, I’ll present several sessions on enterprise software, and especially modern Java Enterprise, Java EE, what will be continued as Jakarta EE, and MicroProfile. My motivation is to present how to make modern Enterprise Java, in the era of cloud native, container orchestration, and service meshes. I’m especially keen to show how Java EE / Jakarta EE and MicroProfile play along and complement each other.

There are especially two of my sessions where I’ll cover Jakarta EE and MicroProfile:

Bulletproof Java Enterprise Applications For The Hard Production Life

This session will be about what to take into account when to constructing applications that are meant to be run in production. As obvious as it sounds to run software in production, we need to be aware of certain threads and pitfalls, and resiliency approaches which tackle these situations.

We will see how to implement timeouts, circuit breakers, retries, bulkheads, and backpressure in Enterprise Java applications. While all of these patterns can be implemented in plain Java, it makes sense to make use of battle-tested libraries and extensions. We’ll see, for example, how the MicroProfile Fault Tolerance API offers us a developer experience that is very close to the programming model of Java EE.

Furthermore, we’ll see a slightly different approach, on how to implement these resiliency patterns with Istio as service mesh technology, and how the two approaches vary. We will also see how to enhance our microservices with observability; concerns such as monitoring, tracing, or logging.

Cloud Native, Service-Meshed Java Enterprise with Istio

This session will be about why enterprise developers should be interested in service mesh technology, especially Istio. I’ll show that it’s not only possible to run Java Enterprise applications in service meshes, but actually a very good fit.

We will see how Istio adds concerns such as observability, resiliency, and traffic management to our Java Enterprise microservices, without requiring much change in our projects. The underlying idea behind service meshes plays along very well with Java EE’s approach of developing in a declarative fashion. We will cover how to fill the few remaining gaps, for example how MicroProfile OpenTracing or MicroProfile Metrics integrates application observability into Istio.


Those you know me can assume correctly that I’ll mostly live-code and live-demo during these sessions :-) We’ll see how Java Enterprise runs in Docker, Kubernetes, and Istio clusters that are running in the cloud.

You’ll find all my Code One sessions here.

I think it makes a lot of sense to combine Jakarta EE and MicroProfile where appropriate. You can read my thoughts on MicroProfile’s role in the age of Jakarta EE and a vision for Jakarta EE.


Found the post useful? Subscribe to my newsletter for more free content, tips and tricks on IT & Java: