Joyful Open Liberty Developer Experience with Liberty Maven Plugin

Short feedback cycles during development are essential for your productivity. If you practice TDD you’ll agree on this even more. In the past, I’ve used several IDE plugins to achieve this for developing Jakarta EE applications. All worked but it wasn’t joyful. Adam Bien’s Watch and Deploy was a light at the end of the

Read More

JMS application with embedded messaging engine in Open Liberty

For messaging, I have always thought of Apache Kafka as the central solution for messaging. While learning more about Java EE I came along the Java Message Service (JMS) specification and gave it a try. In addition, I wanted to learn more about the JMS capabilities of the Open Liberty application server. In this blog post, I’ll show you how to create a

Read More

Deploy a Spring Boot Uber-Jar application within Open Liberty

While I was scrolling through my twitter feed I noticed a post about the new Open Liberty 18.0.0.2 release on June 29. In the official blog post about the new release, they pointed out that Open Liberty now fully supports JavaEE 8 (JAX-RS 2.1, JPA 2.2, JSF 2.3 and so on ..) and that they

Read More

Enable distributed tracing with MicroProfile OpenTracing

Tracing method calls in a monolith to identify slow parts is simple. Everything is happening in one application (context) and you can easily add metrics to gather information about e.g. the elapsed time for fetching data from the database. Once you have a microservice environment with service-to-service communication, tracing needs more effort. If a business

Read More

MicroProfile OpenAPI for creating OpenAPI specifications

Exposing REST endpoints usually requires documentation for your clients. This documentation usually includes the following: accepted media types, HTTP method, path variables, query parameters, and the request and response schema. With the OpenAPI v3 specification we have a standard way to document APIs. You can generate this kind of API documentation from your JAX-RS classes

Read More

Messaging with JMS using Payara with embedded OpenMQ broker

.Messaging is a key concept for distributed enterprise applications. There are a lot of use cases, where you don’t want or need a sync response you get with e.g. blocking REST calls. The counterpart, async messaging, can make sense for the following: IoT (sensor data), event streaming, data duplication, etc. With Kafka and other highly-distributed

Read More

Jakarta EE 8 CRUD API Tutorial using Java 11

As part of the Jakarta EE Quickstart Tutorials on YouTube, I’ve now created a five-part series to create a Jakarta EE CRUD API. Within the videos, I’m demonstrating how to start using Jakarta EE for your next application. Given the Liberty Maven Plugin and MicroShed Testing, the endpoints are developed using the TDD (Test Driven

Read More

Deploy a Jakarta EE application to the root context

With the presence of Docker, Kubernetes and cheaper hardware, the deployment model of multiple applications inside one application server has passed. Now, you deploy one Jakarta EE application to one application server. This eliminates the need for different context paths.  You can use the root context / for your Jakarta EE application. With this blog

Read More

Introduction to GitHub Actions for Java And Maven Projects

I was recently wasting time and energy to get the CI pipelines for my two main GitHub repositories working with Travis CI. Even though the documentation provides examples for Maven-based Java projects, it took me still some time to find the correct setup. While working on these pipelines, I remembered that GitHub now also provides

Read More

Hypersistence Optimizer Review – detect JPA & Hibernate improvements

Recently I got the chance to review Vlad Mihalcea’s Hypersistence Optimizer. It… checks your JPA and Hibernate mappings and provides you tips about how you can optimize your application For evaluating this tool I picked one of the main applications (Spring Boot 2.1 and Java 8) of my current project. With this blog post, I’ll

Read More