Hashtag Jakarta EE #336

Welcome to issue number three hundred and thirty-sixth of Hashtag Jakarta EE!

At the Jakarta EE Platform call this week, Otavio gave a presentation about Jakarta NoSQL and why it matters for developers today, particularly in the context of Artificial Intelligence. Retrieval Augmented Generation (RAG) is a technique to give the AI model more context by providing domain specific data and a vector databases is the most efficient way of providing this information. Jakarta NoSQL will provide access to NoSQL data stores, including vector databases in a standardised way.

I know it is a little early, but the work with JakartaOne Livestream 2026 has started a while ago. The program committee has been established and the CFP is about to start soon. Stay tuned to keep posted on when the CFP starts. The format will be the same as previous years, which means that we have around 10 talk slots available.

Hashtag Jakarta EE #335

Welcome to issue number three hundred and thirty-fifth of Hashtag Jakarta EE!

I am currently in Cluj for Cluj Innovation Days 2026. The main event was on Thursday and Friday and this weekend I have been attending a satelite event in a nearby village called Sâncraiu, More about the event will follow in a separate post shortly.

The Jakarta EE Platform call this week was a fairly short and efficient one. We are pretty much on track according to the plan of releasing Core Profile later this year with Web Profile and Platform following shortly thereafter. Nightly snapshots of the Jakarta EE API is now published to Maven Central.

<dependency>
<groupId>jakarta.platform</groupId>
<artifactId>jakarta.jakartaee-api</artifactId>
<version>12.0.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>

June will be a much calmer month for me when it comes to conferences. I have only one event planned for the end of June. This will be a hackathon at the University of Cagliari where we will have a Jakarta EE challenge. Check out Code the Continuum for details.

Javaforum Malmö May 2026

Last week, I spoke at Javaforum Malmö (Malmö JUG). Since I am the leader of this JUG, I try not to speak there too often, but several circumstances made this time a good time. First of all, our usual venue Foo café recently closed down their business. Their website and email campaigns were our most important channel for announcing events. We also did registration through them, so a totally new setup had to be made. With the new web page I created last month as well as an Eventbrite account, we are ready to handle announcements and registration ourselves. All previous and upcoming events are listed on this page.

So, since I wasn’t sure if we really could reach out to the crowd we usually have, I decided it was better that I was the speaker to avoid disappointing someone traveling in to speak at our JUG. The turnout was, as expected, about the half of what we usually have. A good (re)start! We were hosted at Living IT, centrally located in Malmö. They even sponsored us with pizza and drinks. If they will continue hosting us, I think we have found a new regular spot to meet.

GeeCON 2026

GeeCON is a wonderful community-oriented conference, and GeeCON 2026 was no exception. The organizers, speakers, and attendees are such a friendly crowd. The size of the conference is fairly constant, maybe a little smaller than last year, but it is hard to gauge since the venue is so right-sized. It is hosted in a cinema complex, so the screens are big and the seats are comfortable. There are three parallel tracks, which means that the talks are pretty well attended. I would estimate that there were between 80 and 100 people attending my talk.

The speaker’s dinner on the first night was excellent! We had a three-course meal at a restaurant in downtown Krakow. The quality of the food was just amazing. Maybe only outdone by the company. It is always nice to be able to share a meal with fellow speakers. At GeeCON, you get to do that every night.

If you haven’t spoken at or attended GeeCON yet, I highly recommend adding it to your list of to-dos for next year.

Hashtag Jakarta EE #334

Welcome to issue number three hundred and thirty-four of Hashtag Jakarta EE!

I have been at home the entire week, so I was able to catch up on some work on Eclipse Krazo and Jakarta MVC. All the projects are now updated with the latest EE4J Parent POM, which contains all the configuration and plugins that are necessary to release through the new staging repository and the Maven Central Publishing portal. The TCK passes on GlassFish 8 again, and I am currently working on the runs with WildFly and Open Liberty.

Speaking of Open Liberty, IBM just submitted Compatibility Certification Requests for Jakarta EE 11 compatibility for Open Liberty 26.0.0.5 and IBM WebSphere Liberty 26.0.0.5 to the Jakarta EE Platform project. It is always good to see implementations announcing compatibility. This will also, hopefully, free up more resources to focus on the work with Jakarta EE 12.

I will publish a post about my trip to GeeCON as well as the last Javaforum Malmö shortly. I will have some time to do so when I am at airports between flights the coming week.

Hashtag Jakarta EE #333

Welcome to issue number three hundred and thirty-three of Hashtag Jakarta EE!

The last couple of weeks were pretty busy with events in four different countries on two continents. The upcoming week, I only have one event, and that is within cycling distance. I will present Augmenting AI with the Power of Jakarta EE at the Malmö JUG, aka Javaforum Malmö.

In the Jakarta EE Platform project call this week, we discussed the status of the fourth Milestone of Jakarta EE 12. The four specifications that are being updated for Jakarta EE 12 Core Profile (Jakarta RESTful Web Services, Jakarta JSON Binding, Jakarta JSON Processing, and Jakarta Contexts and Dependency Injection) are in a pretty good state and will be able to deliver at least milestone releases or even release candidates within the Milestone 5 timeline. There was also talk about an update to Jakarta Annotations, but that is not likely to happen in this release. We discussed pulling this specification in under the control of the Jakarta EE Platform project since it is providing platform-wide annotations, and does not necessarily need a project on its own.

If you are up for a cool read, check out this post by Graeme Rocher where he writes about how he uses AI Tooling to implement Jakarta EE specifications in Micronaut with the goal of reaching Jakarta EE 11 Core Profile compatibility. This exemplifies how well-written specifications are food for AI and takes spec-driven development to another level. I am looking forward to following the progress on this effort.

JavaConnect KE 2026

JavaConnect KE 2026 was the second edition of this conference. It is run by Kenya JUG in the good hands of Ian Dancan and his group of ortanizers. The conference featured a nice mix of local and international speakers where superstar-speaker Venkat Subramaniam and myself represented the international. Jakarta EE were able to help out with the event by sponsoring the food. This is an excellent way to help the local organizers to foster their community.

I did a brand new talk that I have titled Augmenting AI with the Power of Jakarta EE. Being a new talk, the slides were obviously finalized only minutes before entering the stage. This is a very fun talk to give, with lots of demoes to amplify the message. It was very well received by the attendees as well, so it wasn’t only me having fun. I anticipate doing this talk regularly in the coming months. It is already accepted to two upcoming conferences, and I will do it in Javaforum Malmö (Malmö JUG) next week as well.

It was a fantastic energy in the room during the entire event. Each talk was followed by engaged Q&A. I had so many great conversations during the coffee breaks, lunch, and after the event. In addition to my talk, I was also invited to participate in a panel at the closing of the conference. Ian, as the moderator, had prepared relevant questions for all the panelists. Of course, many of them revolving around AI in one form or the other. After the panel, there was a contest where all attendees could participate through Slido. The questions were all linked to what the various presenters had talked about in their presentations. A great way to end the conference!

University of York

On the way home from ShiftAPPens in Coimbra, Portugal, I stopped by York, England to give a guest lecture at the University of York. This is the first time I did a guest lecture like this and I hope it wasn’t the last. It is great to get the opportunity to get the feel for what is going on in academia and maybe provide some insights of what is going on in the industry. This feedback loop is often something that is neglected. In this age of AI and abundance of information and misinformation, I think it is more important than ever. Java is used everywhere. And the industry needs the learning institutions to teach Java. We need more initiatives like Java in Education by the Java Community Process (JCP).

With Jakarta EE, we (i.e. Shabnam, Tanja, and myself) are doing multiple activities to involve students, such as hackathons and lectures like this one. We are also revamping the web pages to make it easer to find resources to learn about Jakarta EE. The new Developer Portal is one such thing.

For my guest lecture, I chose to do the Past, Present, and Future of Enterprise Java presentation. It was well received, even if the students were not even born when Java was created and the first adventures with J2EE started. I limited my inside jokes about the early days of EJBs to accommodate for that. The rest of the presentation were well received and I had great questions and insights after the lecture.

On my way back from my adventure at the University of York, I had dinner in Manchester since I was flying out from Manchester Airport the following day. After I had enjoyed some great contemporary Indian food, I headed back to the hotel. On the train, I decided to browse the map of Manchester, and I came across the Alan Turin Memorial and I discovered that I had passed right by it on my way to the restaurant. A little too late, but it also gives me a reason to go back so I can check out the statue of the “Father of Computer Science”.

ShiftAPPens 2026

I finally got around to write about ShiftAPPens 2026. The Hackathon was an amazing experience. Around 150 students came together in a sports hall to participate in this hackathon that over the entire weekend from Friday around lunch until Sunday afternoon.

Since Jakarta EE was a gold sponsor of the hackathon, we could have a challenge of your own. The challenge we proposed was to create a “Know-me-Engine” where the teams should build a Jakarta EE application that interacted with an LLM using augmenting techniques to make the application provide better recommendations. We kept the challenge pretty open to encourage creativity. The motivation we pitched for taking our challenge was that even if they learn other languages and technologies at their university, they will most likely be working with Java, Jakarta EE, and related libraries, frameworks and tools when they start their career after graduation. The World runs on Java, and Jakarta EE is a significant part of that.

In total, seven teams chose to take on our challenge.The teams were composed of one up to four persons. We were pretty curious about what the participating teams would be able to create during the weekend. Would the challenge be to hard? Or too easy? It turned out to be pretty well in the middle. The teams required a minimum of guidance and were able to come up with some pretty cool usages of our technology.

The three judges, Otavio Santana, André Gomes, and myself had a difficult task of selecting the winner when the challenge ended on Sunday. We first narrowed it down to three teams that we asked to give us a 10 minute pitch of their solution. After that, we deliberated a little before unanimously selecting the winning team: VelociGrammers consisting of Carlos Ferreira, Dinis Isaev, António Silva, and Diogo Monteiro.

The VelociGrammers created a Movie A(I)ssistant named Chaplin that used data from your profile on TMDB to add context and relevance to the interaction. It could also directly update your movie ratings from the chat dialogue by providing the TMDB API as tools for the assistant. They used Jakarta EE 11 to create a RESTful Web Services API and interacted with the LLM using Langchain4j-CDI. The UI was developed as a simple HTML page using JavaScript to call the REST services. It all was deployed to WildFly.

The students participating in our challenge said that it was a very fun and creative challenge. And that they were surprised over how easy and powerful developing with Jakarta EE was. This show how important it is to reach out to the learning institutions to make sure that they teach this to students so they can get relevant experience for their future careers.

Hashtag Jakarta EE #332

Welcome to issue number three hundred and thirty-two of Hashtag Jakarta EE!

I am falling a little behind on the event posts, but I assure you that I will post reports from ShiftAPPens and JavaConnect KE shortly. In the meantime, check out this update from the GlassFish project. Among other things, GlassFish 9.0.0-M2 is updated with Jakarta EE 12 implementation and Jakarta REST integration with Jakarta Authorization.

Another item in my backlog is also to write the continuation of my article about AI and open source. It is starting to materialize in my mind, so it shouldn’t last too long before I am ready to write it up. Note that I am not using any AI tooling to write my posts. I take pride in my work, and don’t want to go down that path.

The progress for the specifications that have been asked to produce updates for Milestone 4 of Jakarta EE 12 looks very promising. Check out the minutes from this week’s call for the details. Another piece of good news regarding Jakarta EE 12 is that the Jakarta NoSQL project may be able to merge the features planned for Jakarta NoSQL 1.2 in Jakarta NoSQL 1.1. That means that it will certainly be a stronger candidate for inclusion in Jakarta EE 12.