TomEE vs. Tomcat

By Community, Jakarta EE, Open Source, TomEE One Comment

Our support customers will sometimes ask, “What is the difference between Tomcat and TomEE,” but that’s not really the right question. It’s like asking which is better “Omelets or Eggs” or “JSP or Servlets”. You can’t have the first one without the second. TomEE is Tomcat Plus It’s easier to think of TomEE as the same thing as Tomcat plus some bells and whistles, because TomEE is built on top of Tomcat. Specifically, TomEE 8 is the complete Tomcat 9 distribution plus Jakarta EE 8 (formerly Java EE 8) specific APIs. Tomcat is a powerful and hugely popular Java web…

Read More

Configuring JDBC in TomEE

By Apache TomEE, Jakarta EE, Java EE, TomEE, Tutorials No Comments

A question that comes up frequently in the TomEE community and with Tomitribe’s support customers is “How do I configure a JDBC driver?” There are a number of ways to do this, but I’m going to talk about the two most common methods. You can configure a JDBC driver for the entire TomEE application server or for a specific webapp. Regardless of which way you choose to do it, the configuration syntax is the same. NOTE: You can also configure a JDBC DataSource directly within an @Resource annotation but this is not recommended and is not covered here. See the…

Read More

How to create a microservice with Eclipse MicroProfile and Apache TomEE

By Apache TomEE, Eclipse Foundation, Jakarta EE, Java EE, MicroProfile, Open Source, TomEE No Comments

At Tomitribe we are active stakeholders on projects like Apache TomEE, Eclipse MicroProfile and Eclipse JakartaEE and provide Enterprise Support for these and other Open Source projects like Apache Tomcat & Active MQ. In this article, we will cover how developers can create a microservice with Java using the Eclipse MicroProfile specifications with the DevOps friendly application server, Apache TomEE. If MicroProfile is a topic you want to learn more about, we have many other blog posts covering the basics of Eclipse MicroProfile with details of each of the specifications along with examples. The official Apache TomEE project website also…

Read More

5 minutes or less: Jakarta JSON Binding with Apache Johnzon

By Jakarta EE, Java EE, Open Source, TomEE No Comments

This tutorial shows how to use Jakarta JSON Binding to deserialize JSON data into Java POJOs and to serialize Java POJOs into JSON data. The Jakarta JSON Binding provider used is Apache Johnzon To get started you will need to clone the jsonb-basic-tutorial project on GitHub. Create a directory on your Desktop or somewhere and execute the following Git command. git clone Assuming you have Maven installed your next step is to go into the new jsonb-basic-tutorial directory and execute the Maven install command mvn install The jsonb-basic-tutorial uses mock JSON data from The JSON data is stored…

Read More

MicroProfile: How it has evolved and where it’s headed?

By Jakarta EE, Java EE, MicroProfile, Open Source No Comments

About a year ago, I wrote a blog post about Eclipse MicroProfile that explained what it is and why it was created. The explanation of what it is and why it was created is still valuable, but MicroProfle evolves rapidly, so it’s time to talk about where we are at, what’s new, and what to expect in the next few months. MicroProfile Today As per June 2019, MicroProfile 3.0 has been released with the following content. MicroProfile 1.4 release from last year MicroProfile 3.0 release from this year Updated versions of Metrics and Health Check introduced breaking API changes. They…

Read More

Singleton Session Beans: Eager initialization and ordering

By Apache TomEE, Jakarta EE, Java EE, TomEE No Comments

Tomitribe support customers often use Java Singleton EJBs, and while powerful the sequence of startup and initialize can be confusing. This tutorial will help explain how Singleton EJB’s can be eagerly initialized at application startup and how we can define a priority during this process. Review EJB Annotations Before jumping into the code let’s do a recap of the following annotations used in this blog post: @Singleton Component-defining annotation for a singleton session bean. @Startup Marks a singleton bean for eager initialization during the application startup sequence. @DependsOn Used to express an initialization dependency between singleton components. The container ensures…

Read More

Free Cookbook of 166 Java EE Code Examples

By Apache TomEE, Jakarta EE, Java EE, Open Source, TomEE No Comments

A point of pride for the TomEE community is a large library of examples contained in the TomEE GitHub project. Whenever you clone or otherwise download the TomEE GitHub project you get nearly fourteen dozen examples you can review and run to learn more, not just about TomEE, but Java EE in general. The examples are like a free, code-centric cookbook that covers everything from programming a simple Java web application to CDI interceptors, to WebSockets with TLS Security. With 166 coded examples to choose from it seems there is something for everyone. Getting started with TomEE and running its…

Read More

5 Minutes or Less: ActiveMQ with JMS Queues and Topics

By ActiveMQ, Jakarta EE, Open Source 6 Comments

Tomitribe supports a lot of clients that use ActiveMQ and JMS in production. This post introduces you to both ActiveMQ and JMS. If you already understand the fundamental concepts behind JMS messaging, skip ahead to “A Short ActiveMQ and JMS Tutorial”. It should take five minutes or less. If you are new to JMS than keep reading! JMS Concepts A messaging system is composed of a JMS Broker (middleware), Queues and Topics, and Producers and Consumers. The JMS Broker There is a common misunderstanding that JMS messages are sent directly from one application to another; that the application sending is…

Read More

Jakarta EE: A New Hope

By Community, Jakarta EE, Open Source No Comments

It was announced today that we in the Jakarta EE community would not be able to modify the javax namespace. When I heard that statement uttered for the first time, I was certain I heard wrong. I asked several questions hoping for more positive news with better options in the future. No, it was exactly what I heard. Many of you know me as a positive voice in the community, but even my calm demeanor was cracked. Several visceral statements left my mouth and at one point during the meeting I recall using the word asinine. Transitioning through the stages…

Read More