Watch the Recording: Enterprise Java Application Development With Jakarta EE and Vaadin


Watch this webinar recording to get an overview of the Vaadin framework and learn how to use it to build modern web applications on the Jakarta EE Platform in pure Java, without any frontend framework.  Find out more about the core features of Jakarta EE, like its dependency injection (Jakarta CDI) and persistence (Jakarta Persistence) APIs. Additionally, you will learn how to use Vaadin and Jakarta EE to build responsive web applications that can run on different devices and browsers.

Join Payara Panel Discussion: Evolution of Jakarta EE Runtimes Post Java 17


Join our online event on Thursday the 8th of June - register here - to listen to our seasoned panelists - Andrew Pielage, Fabio Turizo & Luqman Saeed - sharing their insights and practical tips for making the most of the latest Java release as a Jakarta EE developer. They’ll also answer your questions and discuss the challenges and opportunities of Jakarta EE development in a fast paced Java SE release context.

Whether you're a seasoned Java/Jakarta EE developer or just getting started with the language, this webinar is a must-attend event. Register now and join us for this informative and engaging roundtable discussion on the changes in Java 17 and beyond!

Exploring Java Records In A Jakarta EE Context

Java Records, one of the major highlights of the Java 16 release, provides a concise and immutable way to define classes for modelling data. This conciseness lends itself useful in a typical Jakarta EE application that can have a number of layers that need to share data. For example the data layer might want to return a subset of a given data set to a calling client through a data projection object. The REST layer might want to have separate entities for server and client side among others. This blog post explores the adoption of Java Records in a Jakarta EE application as a data transfer and projection object.

What's New in the May 2023 Payara Platform Release?

With the team freshly rejuvenated from the annualPayara Retreat,the May release of the Payara Platform is out with enhancements and bug fixes to rejuvenate your deployments. Payara Platform Enterprise 6.2.0 comes with 4 bug fixes, 3 improvements, a security fix and 6 component upgrades. Payara Platform Community 6.2023.5 also comes with 4 bug fixes, 5 component upgrades, 1 security fix and 1 improvement. 

To Lombok Or To DeLombok?

The Lombok project is a Java library that aims at “spicing up your java.” Started back in 2009, it consists mostly of annotations that can be used on Java classes to generate helpful constructs like getters and setters. It aims at freeing you from writing quite a number of the ceremonial boilerplate code that you sometimes need to write as part of your everyday use of Java. 

How To Consume and Return Data In YAML In Jakarta REST

YAML is a simple, human-friendly data serialization language for all programming languages. It is the main format for working with Docker. As a language agnostic format, there are many bindings for all the major programming languages. You can easily consume and return data in the YAML format in your Jakarta REST application using message body readers and writers.

Watch the video: A Developer Guide to MongoDB with Morphia & Jakarta EE

MongoDB is one of the most popular NoSQL databases in the market, with its flexible data model, scalability, and rich query capabilities. When combined with Morphia, a powerful Java library for MongoDB, Jakarta EE developers can achieve even greater flexibility in creating modern applications that deliver exceptional user experiences. Watch this webinar recording to learn how to use MongoDB with Jakarta EE and the Morphia library!

How To Get Resource Method Information With ResourceInfo In Jakarta REST

Oftentimes in a Jakarta REST application, you may need to access some metadata about a given resource method matched by the Jakarta REST runtime, outside of a resource class. This could be so as to dynamically alter the client's request based on some custom business requirement, or for informative purposes. For example, in a Jakarta REST component like an exception mapper, you might want to get the currently matched resource method and get its HTTP method. 

Make Your Voice Heard In The 2023 Jakarta EE Developer Survey

Are you an Enterprise Java Developer? Or even a Java developer? If yes, then here is your chance to make your voice heard in the2023 Jakarta EE Developer Surveythat is currently on-going. The survey is organized by the Jakarta EE Working Group, the body responsible for steering the development and advancement of cloud native Java development at the Eclipse Foundation.

What's New in the April 2023 Payara Platform Release?

From the Payara Engineering hutch comes a number of quality of life improvements in the April 2023 Payara Platform Releases.  Payara Platform Community 6.2023.4 comes with a bug fix, 4 component upgrades and 1 improvement. Payara Platform Enterprise 6.1.0 comes with 2 improvements, 1 bug fix and 4 component upgrades. Payara Platform Enterprise 5.50.0 also comes with 1 improvement, 1 bugfix, 1 security fix and 1 component upgrade.

Watch the video: Jakarta EE NoSQL with Google Cloud Firestore

In this code-focused webinar we took a look at how you can use the Google Cloud Firestore NoSQL database service in a Jakarta EE application. The recording is now available to watch - see below or head over to our YouTube Channel.

NoSQL has become a popular RDMS alternative for enterprise applications. There are a myriad of options available for developers to choose from. With advantages such as flexible data models, generally faster queries, support for horizontal scaling and easier developer experience, NoSQL is a great alternative to have in your developer toolbox.

Getting Started With Jakarta EE 10 - Jakarta CDI

Jakarta EE 10, the first major release of the platform since it was transferred to the Eclipse Foundation, did come with a slew of changes and updates to many of its constituent specifications. One such specification that received updates is the Jakarta Contexts and Dependency Injection specification. The specification release version for Jakarta EE 10 is Jakarta CDI 4.0, which came with major changes.

Two of such major changes are the split of the specification into a Lite and Full profiles and the change in default behaviour for an empty beans.xml file. In this blog post, we take a quick look at getting started with Jakarta CDI, in my view, the single most influential specification on the Jakarta EE Platform.

March 2023 Payara Platform Release: Payara 6 Enterprise!

A lot. Hot out of the Payara engineering furnace, we bring you the latest Payara Platform Community and Enterprise releases for the month of March 2023. Payara Platform Enterprise 6.0 gives you a production optimized and commercially supported runtime for your mission-critical projects, combining our top-rated support and 10 year software lifecycle with the very latest version of Jakarta EE.

Payara Platform Community 6.2023.3 is out with 4 improvements, 6 bug fixes and 3 component upgrades. Payara Platform Enterprise 5.49.0 also comes with 4 bug fixes, 3 component upgrades and 1 improvement.

Using UUID As Entity Primary Key In Jakarta EE 10

In prior versions of Jakarta EE, the use of UUID as entity ID or database primary key type was a vendor specific feature. So even though you could use it, you had to rely on vendor specific constructs to get the mapping right. With the release of Jakarta EE 10 however, the Jakarta Persistence specification now provides native support for using UUID as entity ID type.

The jakarta.persistence.GenerationType now has a UUID option that indicates to the persistence provider to generate and assign RFC 4122 UUID to the annotated field. The HelloEntity below shows how to use this new feature.

Getting Started With Jakarta EE 10 - Jakarta REST

Jakarta EE 10 was released in September of 2022 as the first major release of the venerable Enterprise Java development platform since it was moved to the Eclipse Foundation. As a major release, it did come with a slew of updates to almost all the major specifications, including Jakarta REST. In this blog post, we take a look at how to get started developing RESTful web services on the Jakarta EE Platform using the Jakarta REST API.

Intercepting REST Requests With Jakarta REST Request Filters

Oftentimes in web applications, there is the need to intercept a request from the client to resource methods. Sometimes this interception must take place even before the request is matched to a resource method. For such needs, Jakarta REST provides the jakarta.ws.rs.container.ContainerRequestFilter interface. This interface is a Jakarta REST extension that can be used to intercept requests to resource methods. 

An implementation of this interface can decide if requests should be intercepted before they’re matched to resource methods through the @PreMatching annotation. A pre-matched request filter will be invoked by the container before the request is matched to its intended resource method. 

For this blog post, let us look at two use cases for request filters. One is a situation where for security reasons, certain HTTP methods are not allowed. For example an organisation can have a security rule in its firewall that disallows HTTP PUT methods. In this case, either all methods have to be POST or request filters can be used to workaround the restriction. 

The second situation is for the custom implementation of authentication. Of course you absolutely should NOT hand-roll your own security setup unless you know in detail exactly what you are doing. You are better off using tried and tested security frameworks and services out there. But for this blog post, assuming we need to implement custom security, we can use a pre matching request filter. The following code snippet below shows a ContainerRequestFilter implementation that implements the two scenarios above.

How to prevent runtime type erasure using GenericEntity in Jakarta REST in Jakarta EE 10

Java generics is a great feature that allows you to have compile time checks for generics. However, due to historical reasons of backward compatibility, type information for generics is erased at runtime. A lot of the time this shouldn’t be of much concern. But there are a few cases where type information is needed at runtime for some kind of decision. 

One such situation is in Jakarta REST when the jakarta.ws.rs.core.Response object is used to return a generic collection of a specific type. For example the code below shows the creation and return of a Response object that has a list of HelloEntity as the return payload to the client. 

Returning Beautiful Validation Error Messages In Jakarta REST With Exception Mappers

All non-trivial enterprise applications have some sort of constraints on the data the application processes. These constraints could range from the simplest to the most complex custom built types. The default validation API on theJakarta EEPlatform, Jakarta Bean Validation has excellent out of the box support for constraining bean fields. Then with its @Valid annotation, you can trigger automatic validation of constrained objects in certain points of an application. 

🔥NoSQL Persistence on The Jakarta EE Platform With Google Firestore🔥

SQL isn't your only option! 
 
Document NoSQL databases store data as document objects, much like JSON objects. Google Firestore is a document database, a NoSQL database offering from Google’s Firebase service. You store your data in documents that are collected into collections.

This guide will introduce you to incorporating Firestore NoSQL database into your Jakarta EE application.

Payara Hackathon - Build an app with Jakarta EE 10 and Payara Platform

We are excited to announce that registrations are now open forPayara Hackathon, running 2-6 March 2023. 

Build an app with Jakarta EE 10 and Payara Platform for a chance to win £3,000 in prize money for the winner, with £2,000 and £1,000 prizes for runners up. 

Get your work reviewed by our judging panel of Java and Jakarta EE experts including Java Champions Ivar Grimstad and Otavio Santana.

5 Jakarta EE (Formerly Java EE) Myths That Need To Die

The Jakarta EE Platform has come a long way since its debut as J2EE back the days of Sun Microsystems. Over the years, it has had its fair share of challenges. A natural consequence of this is that some notions about the platform arising from some of the past challenges that may have been true about past iterations have stuck. This blog post aims to dispel some of these deeply rooted misconceptions about the Jakarta EE Platform, especially after the last major release.

Payara is Part of the MicroProfile Working Group!

Payara is part of the MicroProfile Working Group! 

MicroProfile is a set of Enterprise Java APIs and technologies, designed to help with the challenge of building microservices architectures in Java. 

The MicroProfile Working Group develops these APIs in a collaborative process, and is comprised of passionate individuals, and representatives from different vendors and Java User Groups. 

Join our Webinar: Leave GlassFish Problems Behind: A Guide to Migrating Away From GlassFish

If you’re running GlassFish in your production or development environment and are worried about the lack of support, infrequent application server releases, security issues, lack of bug fixes and patches – then migrating off GlassFish might be the best option for you.

In this webinar (register here), Fabio Turizo (Head of Payara Service Team), together with Jon Weatherhill (Payara Customer Support Team), will explain all the things you need to consider in order to make a migration as smooth as possible.

A Business Guide to NoSQL on the Jakarta EE Platform

Traditionally, enterprises stored their SQL data in relational database management systems (RDBMS). However, the strict and rigid SQL data format is not always fit for purpose...

This has led to the rise of schemaless databases and NoSQL. The distributed, non-relational model of NoSQL database technology made it the almost perfect choice for companies like Twitter, Google and Facebook that had amassed massive datasets from their web applications. 

But is it right for your enterprise? And will it work with Jakarta EE?

An Opinionated Guide To Getting Started With Jakarta EE Development in 2023

This post is inspired by Gunnar Morling'sposton a similar theme for the Java SE Platform. It is an opinionated guide to getting started developing applications on the Jakarta EE Platform. As an opinionated post, there may be some recommendations that you disagree with. That is natural. The post is directed at people just getting started and feel overwhelmed by all the options out there for getting started with enterprise Java. The post is broken down into the following sections;

What's New in the January 2023 Payara Platform Release?

It's January, and the Payara engineering bakery has been busy with the first release of the year. The Payara Platform Community 6.2023.1 release is hot out of the oven with 8 component upgrades, 1 improvement and 1 security fix. Payara Platform Enterprise 5.47.0 also comes with 14 component upgrades, 2 improvements, 3 bug fixes and 1 security fix. 

Jakarta MVC In Jakarta EE 10

Jakarta EE has action and component based frameworks for building web applications using the model view controller architecture pattern. The much older Jakarta Faces is a component based framework while the much newer Jakarta MVC is an action based one. This blog starts by defining the two types, then takes a look at Jakarta MVC, what it is and how to get started.

Webinar Series - What's New in Jakarta EE 10

In September 2022, the Jakarta EE community achieved a huge milestone with Jakarta EE 10 being released (read more here). The key goals of the Jakarta EE 10 release are simplicity, modernization and ensuring it is lightweight. It's been a few months since this major release, so we thought it's a good time now to do a bit of a recap. We invite you to join our series of fast-paced, no slides webinars that will bring you up to speed with Jakarta EE 10!

What Java Versions and Tools Do Payara Users Prefer?

Using Payara Platform? You might be interested in what tools, OpenJDK versions and Jakarta EE releases our global community choose! 

We regularly conduct surveys to learn what technologies are most commonly used with Payara Platform, so we can work on our integrations and plug-ins.

This survey was promoted in October/November 2022 via social media, emails, blogs and our Payara Forum.

Enterprise Batch Processing with Jakarta Batch - 1

Batch processing is an integral part of enterprise applications. Reading, processing and storing vast amounts of data is mostly suited to batch processing runtimes that are optimized for such workloads. Inventory processing, payroll, report generation, invoice/statement generation, data migration, data conversion among others are all tasks that are suitable to batch processing.

Batch processing typically involves breaking data loads to be processed into smaller "chunks," which are also broken down into even smaller units for processing. The batch processing is then carried out on a single unit of the data, one at a time, without any human intervention. This makes the processing of a significantly large amount of data very efficient and fast. Batch processing can also be parallelized to take advantage of the hardware capabilities of the underlying computer. 

This blog series will show you how to create batch processing tasks on the Jakarta EE Platform. The blog is broken down into a series of posts, each blog covering a specific part of the batch specification. This blog introduces you to the Jakarta Batch specification and gives a high level overview of what constitutes a batch task.

Remote CDI Events in Payara Platform

The Jakarta Contexts and Dependency Injection API is the standard dependency injection framework on the Jakarta EE Platform. The latest version of the CDI specification that shipped withJakarta EE 10 is CDI 4.0. This release features a split of the core CDI API into Lite and Full. CDI Lite is designed to run in more restricted environments, and features a subset of the original features. CDI Full contains the Lite and all other features that were in core CDI in previous Jakarta EE releases.

A Guide To Contributing to Jakarta EE 11

Therelease of Jakarta EE 10marked the dawn of a new era for the platform. This release is the first major, community driven release of the platform since it was transferred to the Eclipse Foundation. As a community driven project, the platform is open for everyone to contribute to. One of the advantages of using Jakarta EE for your projects is that you can directly have a say in the direction and future of the platform. With Jakarta EE 10 out of the way, the focus will soon shift to the next release, Jakarta EE 11.

What Is Jakarta Data?

The defacto way of accessing relational data in a Jakarta EE application is through the use of the Jakarta Persistence API. For NoSQL data access, one can now use the much newerJakarta NoSQL API. Jakarta Persistence especially has worked quite well and been serving its purpose with both its support for native queries, JPQL and Criteria queries. However, modern data access paradigms have meant having to pull in third party libraries to enjoy some more abstractions. 

What’s New in Eclipse MicroProfile 6.0?

The Eclipse MicroProfile project is a Jakarta EE based project that augments the platform with cloud-native APIs for developing applications for the cloud. MicroProfile has had five previous version releases, with the latest being 6.0. Versions prior to 6.0 were built on the Jakarta Contexts and Dependency Injection, Jakarta RESTful Web Services and Jakarta JSON APIs. 

What's New in the December 2022 Payara Platform Release?

It's the final release of the year and the final release of Payara 5 Community!

Payara Platform Community 6.2022.2 brings 20 component upgrades, 8 bug fixes, 2 security fixes and 4 improvements. Payara Platform Enterprise 5.46.0 brings 45 component upgrades, 13 bug fixes, and 2 security fixes.

Payara Platform Community 5.2022.5 is the final release of the Payara 5 Community stream.

All releases contain a key fix for a vulnerability in web applications deployed as the default module of an instance's virtual server configuration. Read more details below!

Jakarta EE 10: Frequently Asked Questions (FAQs)

Introduction to Jakarta EE Frequently Asked Questions (FAQs)

Jakarta EE (formerly Java EE)  is a software development platform built on top of the Java Standard Edition, for creating modern applications of all types and sizes for the cloud or in-house. It has gone through a number of evolutions to its present Jakarta EE incarnation. The goal of this blog post is to answer commonly and frequently asked questions about Jakarta EE and enterprise Java software development in general. There are a number of old preconceived notions out there about the platform. This blog post seeks to shed light on a number of these notions within the context of the current platform. 

Payara Platform Deployment Issues? Try Switching Off XML Validation

During deployment of Jakarta EE applications to the Payara Server, all the xml files (e.g. web.xml, persinstence.xml) are verified against its schema.

Payara Platform includes all standard Jakarta EE schema, so there is typically no reason to download external schema to check against xml files. However, if the application uses external schema, in very rare cases, there may be an error during deployment. In this blog, I describe a quick fix to avoid this. 

What’s New in Jakarta REST 3.1 in Jakarta EE 10?

The Representational State Transfer or RESTful architecture is a stateless, HTTP based communication standard for modern applications. It was originally proposed by Dr. Roy Fielding in hisPhD thesis. It has, over the years, become the default, programming language-agnostic means of enabling machine-to-machine communication. An application written in the Django framework in Python can have REST resources that are consumed by another application written in Java with Jakarta EE. Similarly, a Jakarta EE application can create resources that can be consumed by a C# application.  

What is An Application Server? In 3 Minutes

Low on time and want to know what an 'application server' really is?

We offer our explanation. This video covers the difference between application servers and web servers, what an application server can do to make your life as a developer easier, and more, all in less time than your average pop song!

This is a high-level view that might be helpful to pass on to managers and procurement teams who aren't sure what an application server is.

What's New in the November 2022 Payara Platform Release?

The November 2022 Payara Platform release is here and ALL versions are getting a new release!

Payara Platform Community 6.2022.1 is the first stable release of the Payara 6 Community stream. This is certified against the Jakarta EE 10 Platform, Web Profile, and Core Profile. Payara 6 will now be the updated, current version of Payara Platform Community. 

Payara Platform Enterprise 5.45.0 is also out, containing 5 bug fixes, 1 security fix and 2 improvements.

Payara Platform Community 5.2022.4 has been released today as the penultimate Payara 5 Community release, and there is also a release of Payara Platform 4 for Enterprise customers.

All releases contain an important fix for a 0-day vulnerability. 

Read more details below!

Use Jakarta EE Identity Store With Payara and RDBMS

In my previous blog post,here,I examined the JSR-375 specifications and their implementation by Jakarta EE and, more specifically, by the Payara Platform (Server and Micro).

I presented a brief overview of the JSR-375 specifications and their new features, focusing on the notion of Identity Store and illustrating, with a simple example, one of the most common use cases: the LDAP (Lightweight Directory Access Protocol) based authentication and authorization process.

Payara Monthly Catch: September Was Huge!

September was a BIG month in Java. 

Jakarta EE 10 came out - alongside the first compatible products certified against the Jakarta EE 10 platform. Payara 6 Community was one of them!

Also this month = one of the biggest Java conferences in the community, JConfDev, took place in Chicago; and we hosted our webinar with Azul, where we examined AOT vs JIT compilation (video to come). 

We also saw the GA of Java 19! Phew...

Why Jakarta EE is Better than the Competition

Jakarta EE is the most popular Java server-side framework, way ahead its alleged competitors such as Spring, Quarkus, Micronaut or Dropwizard. With the industry-wide adoption of microservices based architectures, its popularity is skyrocketing and, during these last years, it has become the preferred framework for professional software enterprise applications and services development in Java.

In this blog, I'll explain more about Jakarta EE from my perspective as a Senior Java software architect/developer and why Jakarta EE and its runtimes beat the competition, in my opinion!

Using Jakarta EE Identity Store With Payara

These days the world-wide open-source community celebrates the advent of Jakarta EE 10. It is then a good time to look at one of its most relevant and, at the same time, unknown parts: security!

In this blog, I'll give an introduction to Jakarta EE Security, and then explain how Payara Platform builds on Jakarta EE Security with built-in identity stores for RDBMS (Relational Database Management System) and LDAP (Lightweight Directory Access Protocol).

What's New in Jakarta EE 10?

Jakarta EE 10 will be released on September 22! It's almost here...

While the previous releases of Jakarta EE have been focussed on the much-feared namespace change and updating everything with support for Java 11, this is the first major release of Jakarta EE to start introducing new features for developers to use. I’ll cover some of them here.

Deploying to Payara Cloud from a GitHub Action Workflow

Payara Cloud provides an easy-to-use user interface to allow your application to run in a managed cloud environment. While this is very convenient for configuration and troubleshooting work, integration in continuous deployment pipelines calls for something else.

 Our answer is deploying to Payara Cloud using a GitHub Action Workflow and Payara Cloud Command Line (PCL). 

The Payara Monthly Catch: August 2022

August is typically a quiet month, and whilst this is the case in terms of industry announcements, there have been incredible learning resources and general Java articles created. Here, we have rounded up some of the best of them, covering DevOps, cloud computing, Java, Jakarta EE, MicroProfile and open source.

August Payara Enterprise Release

Payara Platform Enterprise 5.42.0 brings 5 bug fixes, 1 improvement, 1 component upgrade and 1 key security fix - of a 0-day vulnerability in all distributions of the Payara Platform that affects web applications that are deployed in the default context root(/).  

A release of Payara 6 Community (Alpha 4) and Payara Community Version 5.2022.3 will follow next week. This will bring the fix to Community users, providing they update to these versions.

Payara Enterprise = A More Bespoke Solution

Payara Enterprise is an alternative to WildFly, JBoss EAP, WebSphere and more. 

With Payara Enterprise, you have everything offered by Payara Community - regular releases, a global community of 80,000 active users, cutting edge Jakarta EE technology - with the added benefits of support from our engineers, special features like a tool for upgrading and a 10-year software lifecycle. 

Ignore Infrastructure and Concentrate on Code with Jakarta EE and Payara Cloud

Java EE, now Jakarta EE, makes it possible for developers to focus purely on the development of a Java enterprise application, solving the business logic without needing to think about infrastructure and operations when writing code. Payara Cloud extends this philosophy by also eliminating the need to worry about infrastructure and operations when preparing your application to run in the cloud. Together, Jakarta EE and Payara Cloud let you focus on writing code and delivering solutions to business challenges from the moment you write your first piece of code to the day people are using your application successfully on the cloud.

We are currently offering limited free previews of Payara Cloud to businesses - follow the link below:


What is MicroProfile?

Java programming language can be enhanced with specifications. An specification is a baseline platform definition - a framework - to guide concrete implementations. 

One of these specifications is called MicroProfile. But what is MicroProfile specification, what is it used for and why might you need it? 

This blog explains all. 

What's New in the July 2022 Payara Platform Release?

The Enterprise-only 2022 July Payara Platform release is here!

Payara Platform Enterprise 5.41.0 brings 2 bug fixes, 2 component upgrades, and 2 improvements.

This month, this includes improving the functionality of the Upgrade Tool, which is available to Payara Enterprise customers only. Also only for Enterprise users is Azul's supported OpenJDK build for enterprises, Azul Platform Core. In this release, we've updated our Docker images to support new versions of Azul Platform Core. We've also updated our Docker images of previous releases with these new versions of Azul Platform Core.

An Enterprise subscription means you can access special benefits like the Upgrade Tool and bundled Azul Platform Core support, as well as being able to continue using earlier Jakarta EE versions after Jakarta EE 10 is released this month (see below).  All these benefits mean an Enterprise subscription can be more cost-effective in the long-run! 

What is a Java Uber-JAR and Why Is It Useful?

An uber-JAR, also known as a fat JAR or JAR with dependencies, is a JAR file that contains not only a Java program but embeds its dependencies as well, and might also contain the web application that needs to be executed.

In this blog, we'll describe the different variants of the artifact, and the advantages and drawbacks it has.

What's New in the June 2022 Payara Platform Release?

The June 2022 Payara Platform release is here! This is an Enterprise-only release, with Payara Platform Enterprise 5.40.0 bringing 3 bug fixes, 1 component upgrade, and 2 improvements.

 We have also made significant improvements to our product documentation on GitHub, for both Enterprise and Community, aiming to create the best developer experience possible for those using the Payara Platform! Read more below.

Use Hibernate as a JPA Provider within Payara

The Payara Platform promises aggressive compatibility. Because we focus on providing an excellent application server, we do not seek to lock you in to a product suite or any particular tools. As you see in this blog, this is also true in the case of which implementation of the Jakarta Persistence API specification you choose to use. We explain why we run automatically with EclipseLink, but also why and how you may switch to Hibernate. 

Choose the tool that is right for your specific use case. 

The Payara Monthly Catch: May 2022

We provide our selection of the best Java and Jakarta EE tutorials, videos, podcasts, blogs and news from the month of May! We also pick the best content we've found from the worlds of DevOps, cloud computing and open source. This is a carefully curated reading list, specially selected for our specific Enterprise Java niche. 

What's New in the May 2022 Payara Platform Release?

The May 2022 Payara Platform release is here! This is an Enterprise-only release, with 5.39.0 bringing 4 bug fixes, 2 component upgrades, and 5 improvements. 

JDK 17 is now supported in Enterprise! It has been tested in Community and can be relied on for mission-critical systems. Enterprise users also enjoy an improved Upgrade Tool, with more troubleshooting available when moving between Payara versions.

The Payara Monthly Catch: April 2022

Every month, we collate the very best content for our specific enterprise Java - Java EE, Jakarta EE and MicroProfile - community. We also look further afield, and where it applies, include interesting blogs, videos and articles on subjects such as DevOps, cloud computing, microservices, software architecture and more. 

TL;DR: We know our audience and if we think you will find something very useful when developing enterprise Java applications - it makes the cut! 

How Does Payara 6 Affect Your Application’s Future?

The release of Payara 6 Community in a few weeks will be a turning point for many of our users. It's important you review all possibilities in advance. Consider migration to be supported, secure and maintain peace of mind!   

We recommend moving to Payara Enterprise,  which we consider the most cost-effective and business-savvy choice. In this blog we explain 5 different scenarios.

Google Remote Procedure Call (gRPC) Example in Payara Server

Google Remote Procedure Call, or gRPC, is an open source Remote Procedure Call (RPC) framework focused on high performance and portable to any environment. It is an alternative to REST, deemed by many as more efficient.

After one of our customers requested it, the extension became available in our April 2022 Payara Community and Enterprise releases: 5.2022.2 and 5.38.0. 

What's New in the April 2022 Payara Platform Release?

The April 2022 Payara Platform release is here! Payara Platform Community 5.2022.2 brings 13 bug fixes, 2 component upgrades, 3 improvements and 3 security fixes, whilst Payara Platform Enterprise 5.38.0 includes 2 bug fixes, 1 improvement and 4 security fixes. 

It includes the fix for "Spring4Shell", and improved support for Jakarta EE 9, as you can now run Jakarta EE 9 applications using PrimeFaces.

This release also gives Payara users the ability to use gRPC, the Google Remote Procedure Call Framework.

Please note: This is the penultimate Payara 5 Community release. Payara 6 Community will soon take its place, to be used with Jakarta EE 10. If you want to keep using earlier Java EE/Jakarta EE versions - we encourage you to move to Payara 5 Enterprise.

Easy Jakarta EE Integration Testing with the Payara Platform and Testcontainers

One major issue when developing modern enterprise applications is the "works on my machine" problem: when an application works well on your machine but is not functional in production or even on a colleague's machine. An even more prevalent problem is to maintain the quality of ever-changing applications during development and maintenance. 

This is especially prevalent when Jakarta EE applications are developed and not properly tested in an isolated and cohesive manner. Proper integration testing helps to avoid both the "works on my machine" problem, and ensures developers can change the application effectively without breaking it. However often teams struggle with it, due to a lack of standardized testing solutions and the unpredictability of real-world conditions. 

Here, I present an effective method for Jakarta EE integration testing, using Payara Platform and Testcontainers in my example.

What is Jakarta EE?

Java is the world’s third most used programming language, and the basis of some of the world’s biggest software projects.

If you are running a large, enterprise application - supporting commercial projects - Java alone may not be enough. You need to use it with Jakarta EE, formerly called Java EE.

What's New in the February 2022 Payara Platform Release?

The February 2022 Payara Platform release is here!  Payara Platform Community 5.2022.1 includes 3 improvements and 10 bug fixes. Payara Platform Enterprise 5.36 brings 3 improvements and 4 bug fixes. 

We also released a second alpha version of Payara 6, with the headline news being that it now includes support for MicroProfile 5.0!

Read more below to learn about the highlights.

New Guide: Migrating WebSphere Application Server to Payara

We recently created a new guide to help you move from WebSphere Application Server to Payara Server 5.

Payara is better than WebSphere, for reasons including Payara's more regular releases, greater variety of supported IDEs, a compatible microservices edition (Payara Micro) and varied monitoring options.

Hermes, the logistics provider, is just one company which made the change from WebSphere to Payara Server! 

Payara Platform in 2022!

As 2022 moves into its second month, we provide a short and sweet update on what you can expect from the Payara product suite this year.

You can watch the full interactive question and answer session with our Founder and CEO Steve Millidge below, or catch up in this quick summary. 

New eBook: Dismiss the Java Myths!

Our new bumper eBook tells you all you need to know about Jakarta EE and busts common misconceptions. 

Spoiler: Jakarta EE is NOT heavy; it IS cloud-native; it easily delivers microservices. The Jakarta EE (previously Java EE) standards offer a choice of runtime, vendor neutrality and longevity - what are you waiting for?

Should you use OpenShift to Run Payara in the Cloud?

The world is moving to containerized workflows. As a result, tools to handle containerization become more and more important.

Kubernetes is the most widely used platform for managing and orchestrating containers. But since it contains only the basic building blocks, you need additional tools if you want to set up your environment for running applications on it.

In this blog, we take a closer look at Red Hat OpenShift and the comparison with Kubernetes.

When Is It Time To Move From Payara Community to Payara Enterprise?

Which version is right for me?” … we get asked this question all the time, so we wanted to provide you with a more in-depth discussion that outlines similarities and differences to help explain why you would want to choose one or the other.  

We thought it might be helpful to enumerate some of the differences between two editions: 

Payara at the JakartaOne Livestream

The JakartaOne Livestream is a huge event in the Jakarta EE and MicroProfile calendar. Organised by the Eclipse Foundation, it is a one-day virtual conference for developers and technical business leaders.

It brings insight into the current state and future of Jakarta EE and related technologies focused on developing cloud-native Java applications. 

Comprehensive Getting Started Guide – Payara Server

Payara Platform is an open source middleware platform that supports Jakarta EE (formerly Java EE) applications in ANY environment: on premise, in the cloud, or hybrid. 

It is a solution to GlassFish problems such as lack of supported Docker images and automation assistance, no internal monitoring system and an absence of modern security standards and critical server event alerts and notfiers. It is also an alternative to Oracle Weblogic, Wildfly, JBoss EAP, WebSphere, OpenLiberty and more. 

Our previous Getting Started guide had not been updated with improvements to Payara Platform, such as our hide password with password aliases feature - and did not contain comprehensive guides to integration with other technologies.

Hype-Driven Development: Don't Be a Victim!

We are launching a new video series: Quick Fire Java with Payara! The first episode sees Payara Product Manager, Rudy De Busscher, discuss "Hype-Driven Development"; software investments based on "buzz" around a trend or product, rather than whether it actually works for your specific use case. 

What's New in the December 2021 Payara Platform Release?

The December 2021 Payara Platform release is here!  Payara Platform Enterprise 5.34.0 includes 7 improvements, 1 security fix, 8 bug fixes, and 1 component upgrade. The Payara Platform Community 5.2021.10 release offers 6 improvements, 1 security fix, 7 bug fixes, and 2 component upgrades. 

You can download Payara Platform Community 5.2021.10 here and request Payara Platform Enterprise 5.34.0 here. 

Read more below to learn more about the highlights of this release.

Payara Platform November Roadmap Webinar

In regular webinars, our CEO and Founder Steve Millidge provides an update on the progress of Payara Platform: what we've achieved in relation to our yearly roadmaps, and what we have left to do! 

In this webinar, Steve looked at what we've achieved so far in 2021, and ahead to the final quarter of this year and plans for early 2022.

Getting Started with Jakarta EE 9: Jakarta Validation

In this last blog of the Getting Started with Jakarta EE 9 blog and video series, we have a look at the Bean Validation specification. Using this specification, you can define some validation rules, from some simple ones on a single field to very complex ones on a business entity, that are reusable depending on the input frameworks you are using within your application.

JDK17 Support in Payara Community

JDK 17 is the latest Long Term Supported (LTS) version of the Java platform, released in September 2021. LTS versions will have regular releases for the coming years and you don't need to switch to a newer version after 6 months as you do with those 'interim' JDK versions.

The features in an LTS version are kept stable so it is ideal for running  your enterprise applications. Once you switch to an LTS, you can safely update to any minor release to accommodate for security issues and bug fixes of the JDK platform, but without needing to perform a migration.

With the release of the November 2021 version of the Payara Platform Community Edition, Payara Server, Payara Micro, and the Web Profile run on JDK 17 platform.

Payara Platform October 2021 Survey Results

We’re pleased to announce that our October 2021 Payara Platform Survey results are now available! 

This survey was promoted to our audience in October 2021. We shared with Payara Platform Enterprise customers and Community users via social media, emails and blogs. Thank you so much to everyone who took the time to contribute!

Running Payara Server as a Service - Added Support for systemD on Linux

Before your application can respond to any request from the user, Payara Server needs to be started as a process on a machine. The Payara Server Domain instance or a Payara instance can be started using the Asadmin CLI tool.

But in many cases when you run Payara Server on an on-premise machine or in a virtual machine, you want to start the Payara process automatically when the machine is booted. You can do this by defining Payara as a Service on the machine.

VIDEO: Adam Bien - The Future is Now (Payara Cloud)

Adam Bien explored the possibilities of Payara Cloud in his recent talk for the 2021 J4K conference! 

He used the Payara Cloud demonstration environment - with the caveat that the user interface is not completed yet - to demonstrate how our next generation application server creates a "serverless" environment; moving the "plumbing behind the scenes" so you only have to worry about selecting your WAR, clicking deploy, and running it on the cloud! 

VIDEO: 7 Reasons to Switch to OpenJDK 17 as a Jakarta EE Developer

JDK 17, the next Long-Term Release of Java SE, launched in September. You may have seen many of the great blogs, articles, and videos about what this means for Java developers. For just a few places to start, we like: theJetBrainsteam'sdiscussion on migrating to JDK 17; Todd Ginsberg onhis ten favourite features; andGunter Rotsaert mapping out thedifferences between Java 11 and Java 17. 

But what does the new release mean forJakarta EEdevelopers specifically? If you are using these enterprise-orientated specifications, stewarded by theEclipse Foundation, should you make the switch?

Payara's Rudy De Busscherthinks you should, and explained why in his talk toIstanbul JUG, powered byHazelcast.

The Payara Monthly Catch: October 2021

In October, ourJavaandJakarta EEcommunity has still been digesting the new long-term support release, JDK 17, out last month. Below, find useful articles such as theJava Champions demystifying the new licensing,Per Liden on the inclusion of Z Garbage Collection, andGunter Rotsaert on differences between Java 11 and Java 17- some of our favourite experts are helping the community get to grips with improvements and changes!  

The innovative Payara team are always looking forward though, and work is in full swing for Jakarta EE 10. Particularly popular this month was a blog by our CEO Steve Millidge, who is project lead for the Jakarta Concurrency project, a specification within theEclipse FoundationJakarta EE that works on transferability between Java SE Concurrency and its enterprise-orientated counterpart. Make sure you check it out if you are interested in honing your open source skillls by contributing to a project (Steve is actively looking for volunteers to test, write documentation and develop) but also if you want to know more about what you can do with Jakarta Concurrency in its current form.

Big news also is the new and improvedPayara Forum. We've moved from Google Groups to a new location that makes it easier to discuss use of Payara Platform with like-minded developers - and our engineers! Make sure you have investigated it. 

In addition to JDK 17 tips and tricks, and Jakarta Concurrency content, please find below our pick of the best blogs, articles, videos and podcasts from the world of Java, Jakarta EE, MicroProfile, open source and DevOps over the last month. We also include industry news and where you can find Payarans across the web!

Client Certificate Realm Configuration in Payara Server

A realm is the security policy domain within an application server. It defines how the authentication and authorization for your application is performed. Most of the time, your application is used by a person that can provide username and passwords as credentials (directly or indirectly through providers like an OpenId Connect provider) but some use cases exist where another process needs to use your endpoints.

Jakarta Concurrency: Present and Future

Jakarta EE, previously Java EE, is a set of specifications that enables the world wide community of Java developers to work on cloud native Java enterprise applications. It is an open source project maintained by theEclipse Foundation.

Jakarta Concurrency is a small, but fundamental, specification under the Jakarta EE umbrella. As project lead, I provide more information on what it is, its future and how to be involved.

Configure the Details of the GZIP Compression in Payara Platform October 2021 Release

Data is sent to and received from the endpoints within Payara Platform. When large chunks of data are sent to the client in response to a request, it might be an option to compress the data when the bandwidth is limited.  This speeds up the transfer, but requires more CPU on the server and the client to perform the compression and handle the response.

With the October 2021 release, the Payara Platform allows configuring the compression level and the compression algorithm so you can better tune your environment for your requirements.

Client Certificate Validation in Payara Platform October 2021 Release

The Client Certificates security extensions continue to receive improvements in this release. In previous releases (July and September 2021) we added Client Certificate Authentication improvements, giving the ability to define multiple TrustStores and implement a SPI to allow developers to perform additional checks on the Client Certificate.

Previously, any Client Certificate that is used and matched within the KeyStore was accepted, even when the certificate was expired. Starting in the October 2021 releases (Payara Community 5.2021.8 and Payara Enterprise 5.32.0), using the newly developed SPI, we have implemented an additional check when using the Client Certificate authentication option to ensure the certificate is valid.

What's New in the October 2021 Payara Platform Release?

The October 2021 Payara Platform release is here!  Payara Platform Enterprise 5.32.0 includes 8 improvements, 9 bug fixes, 1 security fix, and 5 component upgrades. The Payara Platform Community 5.2021.8 release offers 7 improvements, 7 bug fixes, 1 security fix, and 5 component upgrades. 

You can download Payara Platform Community 5.2021.8here and request Payara Platform Enterprise 5.32.0 here. 

And don't forget to join the 'October Release Overview + Client Certificate Authentication and Security Realms in Payara' webinar with Rudy De Busscher on October 26th 2021 3 PM BST.  Find out more & registerhere.

We also invite you to participate in the Payara Platform Survey- for your chance to win one of two $25 Amazon vouchers. The survey is mostly multiple choice and takes about 6 minutes to complete. Thank you!

Read more below to learn more about the highlights of this release.

WATCH VIDEOS NOW: JakartaOne Portugese & Spanish

Iberian & South American Payara Platform users: we have recently participated in both theJakartaOne - PortugeseandJakartaOne - Spanishvirtual conferences!

You can now catch up on the videos: vendor talks, discussing what we do at Payara Services, benefits of our products, and more about our customers; and at Jakarta One - Spanish, an informative microservices security talk, using identity platformOkta

VIDEO: Jakarta Concurrency, What's Next.

A key goal of Jakarta Concurrency is creating a simple path betweenJava SEandJakarta EE (previously Java EE) - making it easy for organisations scaling up to migrate their mission-critical applications to the enterprise-orientated Jakarta EE specifications.

Steve Millidgeexplained more in hisEclipse FoundationJakarta EE Tech Talk. You can now watch the video! 

Official Microsoft Azure Sample for Payara Micro

Payara Server has a strong relationship withMicrosoft Azureand theJava at Microsoft team - and now, there's an official best practice Azure Sample for running Payara MicroonAzure Kubernetes Service(AKS)! 

This is a reaction to more and more Azure customers wanting to run Payara on Azure, with many moving from GlassFishto Payara Micro on AKS. It also precedes the next step for Azure and Payara:  releasingPayara Cloud as a PaaS running on Azure.

How to Search Log Entries in Payara Cloud

Payara Cloud (launching soon!) delivers an easier way to run your Jakarta EE applications on the cloud. You can upload any web application that follows the Jakarta Web profile specification and click deploy - Payara Cloud will configure and run it in a containerized Payara Micro instance.

Unlike building an application server deployment on a Cloud Infrastructure as a Service or on raw Kubernetes, Payara Cloud takes on a Platform as a Service (PaaS) role and handles provisioning of the infrastructure, installation, configuration, deployment, and scaling your application to eliminate costs and reduce the risks of managing Jakarta EE application servers on Cloud.

You can search the log entries easily within Payara Cloud if you suspect errors or expect a message within the log file. 

The Payara Monthly Catch: September 2021

We hope you enjoy our September Payara Monthly Catch - a collection of articles, videos & podcasts around Java, Jakarta EE, MicroProfile, open source and cloud computing! 

This month the major news for the Enteprise Java community community was the release ofJDK 17, the next Long-Term Support (LTS) OpenJDK release. Find our pick of the best resources relating to this below, including Payaran Rudy De Busscherexplaining how Payara Platform will soon support JDK 17 and why. 

TheEclipse FoundationJakarta EE Developer Surveyresults also came out, revealing that Java EE 8, Jakarta EE 8 and Jakarta EE 9 are now hitting the mainstream, with 75% adoption among respondents. 

It's also been a great month for resources and compatabilities for our related technologies: Jelastic has introduced an auto-clustering option for use with Payara, andAzure produced an official best practice sample.  More related technologies are realising how many of their users want to use Payara Platform, and creating tools to make this easier! 

Using Hazelcast SQL with Payara Micro

Co Authored with Nicolas Frankel (Hazelcast Developer Advocate), this article is also available as a PDF.

The Hazelcast In-Memory Data Grid (IMDG) is an efficient method of storing data in a distributed way within the memory of the different processes of the cluster. Because it is distributed, searching the data locally requires 'moving' the data to your instance so it can be accessed, which is not overly efficient.  Hazelcast SQL allows distributed queries which perform the search where the data is, and then transfers only the results to your process. Since the Payara products already use Hazelcast IMDG, using the Hazelcast SQL capabilities is straightforward: just add the additional JAR library to start using it.

Getting Started with Jakarta EE 9: Jakarta Faces (JSF)

With Jakarta Faces, you can build user interfaces for web applications, including UI components, state management, event handing, input validation, page navigation, and support for internationalization and accessibility. It is a server-side framework that allows for rapid development of web applications, mainly administrative applications which are data entry and business logic heavy. The web pages are created by defining the components that are required and the events that are triggered by the user, and the rendering happens in a separate phase that can be customised to your needs.

In this blog, we mention a few features of Jakarta Faces 3.0 as it is one of the largest specifications of Jakarta EE 9.

Getting Started with Jakarta EE 9: Jakarta Persistence API (JPA)

With the Jakarta Persistence API, the system can perform the serialization of Java Objects into the Database or read data into objects. You can use Jakarta JPA to read and write Java instances easily from and to the database.

With the help of annotations on Java classes and instance variables, the mapping is defined between the Java world and the database world. 

In this blog, we cover some of the basic aspects of the JPA specification and how you can use it.  The specification is rather large so make sure you also consult some documentation and other resources to find out all the capabilities of the specification.

Did You See Our Latest Payara Platform Releases? Users Helped Shape Them!

As a proud open-source business, we value the contributions of our community of users - driving the Payara Platform forward and shaping its development. 

Users can suggest and make improvements or bug fixes by issuing a pull request on GitHub. We then reward our contributors with Payara 'swag' - t-shirts, stickers and pens! 

Client Certificate Authentication Improvements in Payara Server July and September 2021 Releases

SSL certificates are used for several features within Payara Server. You can configure your custom certificate for the TLS based connections the Payara Server is serving when using a custom domain name. And those certificates can be used for authentication purposes to identify the caller, mainly in a machine to machine communication.

With the July and September 2021 Payara Server releases, we have implemented two new features to improve the usage of these custom SSL certificates.

What's New in the September 2021 Payara Platform Release?

The September 2021 Payara Platform release is here!  Both Payara Platform Enterprise and Payara Platform Community Editions include a security fix that requires you to take action to ensure the security of your environment. (Explained below).

Payara Platform Enterprise 5.31.0 and Payara Platform Community 5.2021.7 releases each contain 10 bug fixes, 1 component upgrade, 1 security fix and 1 new feature. 

You can download Payara Platform Community 5.2021.7 here and request Payara Platform Enterprise 5.31.0 here. 

Read more below to learn more about the highlights of this release.

Read All About It: Interviews With Our CEO Steve Millidge

Did you know? Payara Services is the proud recipient of a 2021 Queen's Award for Enterprise - International Trade. Often called the "Knighthood for Business", theQueen's Award is the UK's premier business accolade. 

On the back of this achievement, our CEO and Founder Steve Millidge was in high demand as an interviewee. In two recent interviews, you can find out more about what winning this award meant, Payara as a business, more about our open source business model and even Steve's motto! 

Real-World Use Case: Robust and Flexible Batch Processing with Payara Platform

One of the Payara Platform features people like most is flexibility for how it can run applications and services and connect them to each other. You can run applications on Payara Server, Payara Micro, and cluster them all together in the same Domain Data Grid, while using the same technology for building the applications and the samefeatures in both Payara Platform runtimes. A lot of our customers take advantage of this flexibility and some even take to the extreme, as described below.

Is the Java EE Deployment Model Out of Date? Watch The Video.

We are now sharing the FINAL video in our'Dismiss the Myths: Get to Know Jakarta EE (Java EE)'. 

This one asks the question: 'Is the Java EE Deployment Model Out of Date?'. We definitely don't think so! 

Steve Millidgeshows you why the Java EE (Jakarta EE) deployment model is not old fashioned or out of date - and goes into battle with Spring!

How and When to Disable Domain Data Grid in Payara Server

Payara Server comes with the Domain Data Grid, a very powerful feature related to the clustering capabilities of the product. If you're deploying the application on the domain server itself and are not using any clustering options, it's possible to disable the Domain Data Grid to slightly reduce Payara Server's start up time - but should you?

The Domain Data Grid can be disabled but be aware that a few other features in Payara Server also depend on the Domain Data Grid.

Team Payara Receives Queen's Award for Enterprise at Official Ceremony

Earlier this week, we were offically presented our2021 Queen's Award for Enterprise- International Trade - trophy, in a ceremony held at Malvern Hills Science Park. TheQueen's Awardis signed by Her Majesty Queen Elizabeth 2nd and Prime Minister Boris Johnson. 

Read more below, and find a round-up of news coverage! 

Quickly Configure a Database Connection with Payara Cloud

Payara Cloud (launching soon!) is the next generation of cloud-native application runtime, offering an easier way to run your Jakarta EE applications on the cloud. It will take any web application that follows the Jakarta Web profile specification and run it in a containerized Payara Micro instance - and all you need to do is upload your WAR file and click deploy. 

What's New in the August 2021 Payara Platform Release?

The August 2021 Payara Platform release is here!  Payara Platform Enterprise 5.30.0 includes 8 bug fixes, 2 component upgrades, 2 security fixes and 4 new features. The Payara Platform Community 5.2021.6 release offers 7 bug fixes, 1 component upgrade, 2 security fixes, and 3 new features. 

You can download Payara Platform Community 5.2021.6here and request Payara Platform Enterprise 5.30.0 here. 

And don't forget to join the 'August Release Overview + OAuth2 & OpenIdConnect Authentication & Authorization' webinar with Rudy De Busscher on Tuesday, the 24th of August at 3PM BST - find out more & register here.

Read more below to learn more about the highlights of this release.

How to Set Custom Domains for your Applications in Payara Cloud

Payara Cloud is an all-in-one serverless platform and PaaS solution for Jakarta EE (Java EE) and MicroProfile applications that simplifies cloud infrastructure management. With Payara Cloud, you don’t need to worry about application servers or deal with Kubernetes. Standard and Premium Payara Cloud subscribers can set custom domains for their applications.

Monitoring JMX Using the Notification Service

Within Payara Server, the JMX system is used to store all the data that the monitoring service captures of the modules within the runtime.

You can use any tool that can connect to the JMX system to collect these data and monitor the environment. Besides this direct access, the notifier service can send this information to various channels so that the data can be integrated with external systems.  

The Notifier service is modular since October 2020 with version 5.2020.5 so that you can include only those notifiers that you are interested in and use within your environment. These notifiers cover a wide range of channels, from typical destinations like email, JMS Queues, over APM tools like DataDog and NewRelic to communication platforms like Teams, Slack, and Discord.

In this blog, we take a look at enabling JMX Monitoring for the JVM Heap Size, monitoring the process Heap Size, and then sending that information to a Discord channel.

Steve Millidge discusses Jakarta EE, the Eclipse Foundation & GlassFish's future on the WaterWorks Podcast

Our CEO and FounderSteve Millidge is a guest on the WaterWorks podcast, the technology discussion podcast run by journalist and authorJohn K. Waters

Waters is the editor in chief of theConverge360 news and information sites Application Development Trends(ADT Mag), Pure AI, and Futuretech360 - with his career also including writing books, including "The Everything Guide to Social Media," one of the first deep dives into this world-changing phenomenon, and "Blobitecture," an exploration of an architectural and industrial design trend enabled by computer software. He also co-scripted the documentary film "Silicon Valley: A 100 Year Renaissance," which aired on PBS.

Steve had a conversation over Zoom with John. Steve - in Malvern, England, after work - spoke to John - in his Silicon Valley office just before 9am. Their discussion was wide-ranging and insightful, covering everything from the future of Jakarta EE and how it will fare under Eclipse Foundation stewardship, to the specifics of Payara's journey and how we got our marine logo! It's a must listen for those interested in open source and Enterprise Java. 

Why Use Alibaba Cloud with Payara Platform?

We are all familiar with Microsoft Azure, Google's GCP, or Amazon's AWS platform for running applications in a public cloud. But there are also other, lesser-known platforms like Alibaba Cloud.  And while many don't know this platform, it is by far the largest one in the Asia Pacific region and even the third largest cloud provider worldwide. Alibaba Cloud has some interesting features.

In this blog, we explore some aspects of the platform and how it can be used with the Payara Platform.

We're Hiring! August 2021

We're hiring for a range of roles this August! 

Wherever you are in the world, you can come and work for our rapidly-growing, expert team. We are a proudly 'remote-first' company -here'sour Talent Acquisition Lead Mag Dutka explaining what this means. As a result, in all but one of the roles we are welcoming applications from any country in the world. 

A key role we are recruiting for isSoftware Engineering Manager. You will be leading a team of world-class Java / Jakarta EE developers to deliver regular releases of both ourCommunity andEnterprise products to meet product roadmap objectives. 

For all of our engineering roles, we'd love to see applications from those who have worked with us before - whether that's partnering in events orcontributing via GitHub

And don't think that you need Java coding skills to join us! It takes a vast range of HR, Marketing, Design, and Operations skills to power an award-winning, multi-talented and energised team - in this round of recruitment, for example, we are also looking for a Head of Marketing

The Payara Monthly Catch: July 2021

Welcome to our July Payara Monthly Catch - a collection of articles, videos & podcasts around Java, Jakarta EE, MicroProfile, open source and cloud computing. This month, the list mixes up quirky content you may not have seen - weird programming facts, tips on using the Snowflake Database - to insight from some of the most esteemed experts in the industry. Payara Platform has also been appearing all over the web, as influencers and our community use it in demos and discuss our products in conferences. Find out where Payara can be found across external blogs, conferences and media outlets in our 'Featuring Payara and Payarans' section.

On the internal news side, we announced that Payara Server Community 6.2021.1.Alpha1 is now a Certified Jakarta EE 9.1 9.1 (Full Profile) Compatible Product! Even though we aren't encouraging users to run Payara Server 6 in production yet - you can achieve the same result, migrating to Java SE 11, in Payara Server 5 - this is important news in the journey of Payara Platform products alongside Jakarta EE.

We also published a full summary of what we got up to for our annual team-bonding company event, Payara Week - from chocolate Payara fishes to cocktail making challenges, open source business model learning to daily workshops. Make sure you read ithere! You can also watch videos from our summer webinar series, 'Dismiss the Myths: Get to know Java EE / Jakarta EE'here - the second half of the sessions took place this month.

What’s New in the July 2021 Payara Platform Release?


The July 2021 Payara Platform release is here!  Payara Platform Enterprise 5.29.0 includes 8 bug fixes, 9 improvements, 1 security fix and 1 new feature. The Payara Platform Community 5.2021.5 release offers 13 bug fixes, 1 security fix, 10 improvements, 1 new feature and 1 component upgrade.

You can download Payara Platform Community 5.2021.5 here and request Payara Platform Enterprise 5.29.0 here. 

Read more below to learn more about the highlights of this release.

Adam Bien: Overview of Next Generation Cloud Java Runtimes (Video)

As part of Closed Beta testing, we offeredJakarta EEexpert, Java Champion,bloggerand podcaster,Adam Biena trial of our next-generation cloud-native application runtime,  Payara Cloud. 

He went on to discuss Payara Cloud as an alternative to HelidonandQuarkus; a 'serverless server'. He included it in hisMid-Year 2021 Observations and Reflectionsand created a video with hisinitial thoughts. Read our previous blog, rounding up his comments so far,here.

At theJ4Kconference this year, he went into further detail. He told viewers:“I really like the idea [of Payara Cloud]. Why? Because it is the opposite of where everyone is going with smaller and smaller runtimes, you can go that route or another route.” You can now view the video of this talk to watch him demonstrate Payara Cloud live and see how he reached this conclusion.  

Are Java EE Application Servers Heavy? Watch The Video.

Our summer webinar series continued with 'Are Java EE Application Servers Heavy?'

In thismyth-busting webinar, Steve Millidge (founder of Payara), showed viewers that Java EE application servers are NOT resource-heavy or slow.  His live demonstrations showed it’s possible to have a small footprint and low resource usage in Jakarta EE runtimes.

If you missed the webinar earlier this month, you can now watch the video!

The Payara Monthly Catch: June 2021

June has been another busy month here at Payara Services, both internally - with our biggest yearly company event, Payara Week, taking place - and externally - with our 'Dismiss the Myths' Webinar series kicking off and proving to be one of our most popular community events yet. 

We're halfway through 'Dismiss the Myths: Get to Know Jakarta EE (Java EE)' , a series of 6 webinars where our CEO and Founder Steve Millidgedismantles common misconceptions one by one. Check out thisblog for links to watch webinars that have already taken place, and sign up to the next three! 

As for Payara Week, you may have seen the social media content around our team-building, future-planning, fun-having annual company summit - this time virtual, but no less engaging! We'll be following up with a full blog with pictures and details, but peek at one of the reimagined Payara Fishes from the week's photo competitions below. 

We also got a Twitter blue-tick this month - proving once and for all that we are 'authentic, notable and active' - in our case, when it comes to providing top Jakarta EE and Java EE, MicroProfileand cloud content!

Momentum also continued to grow for our next-generation cloud native application runtimePayara Cloud, with key influencer Adam Bien presenting on it as an alternative toHelidon and Quarkus at the j4k conference. You can find out what he already had to say in his initial trial of the product here. 

But it hasn't all been 'the Payara Show'. We've also searched for and shared the best tutorials, updates, news, articles and videos from our wider community - find them below! 

Is Java EE Outdated and Dead? Watch The Video.

We are almost halfway through our summer webinar series! Across 6 online events, our CEO and FounderSteve Millidgeis discussing common misconceptions aroundJava. He's broken down false views of the programming language, and its enterprise-orientated iteration Jakarta EE, into 6 topics - tackling them one by one and showing that Java is still relevant. 

Each session is concise - around 30 minutes - and you don't need any previous knowledge of Java or Jakarta EE. 

Watch Adam Bien Trial Payara Cloud! (Video)

Adam Bien is a well-known expert in the world ofJakarta EE. He is a freelancer, author, Java Champion andblogger, providing resources and training materials, and is host of theAirHacks.FM podcast - where he regularly talks to the leading experts in the Java and Jakarta EE community, with recent guests including PayaransLenny PrimakandRudy De Busscher

As a long time user of the Payara Platform - regularlyrecommending it as a solution to GlassFish problems - we were keen to offer him a trial ofPayara Cloud, our next generation of cloud-native application runtime. Payara Cloud offers an easier way to run Jakarta EE apps on the cloud, allowing you to simply select your war, click deploy, and watch your apps run - automatically, like magic!

As part of our Payara Cloud Closed Beta testing, we offered him a trial of the software. He created a concise video showing his experience using serverless MicroProfile and Jakarta EE on Payara Cloud. Watch it now to find out what his first thoughts were in his own words.  

How to Update An Application Using JAXB from JDK 8 to JDK 11

The Java Architecture for XML Binding (JAXB) framework is used to easily convert between XML and Java class instances.  You just have to define some annotations on the Java classes and properties and the framework uses those definitions to convert between them. But is also heavily used within the Java EE specification Java API for XML Web Services (JAX-WS) that implements the support for SOAP messages within Java Enterprise.

Are GlassFish and Payara Server the Same?

When commercial support for GlassFish ended in 2014, Payara Server was created from the open source code as a fully supported drop-in replacement for GlassFish.  

Payara Services was born in 2016 to offer support solutions for Payara Server. By 2017, Payara Services had joined The Eclipse Foundation and the Payara Platform expanded to include Payara Micro and comprehensive commercial support options for development projects, in-production support, and consultancy solutions.  New product features and the development of the Payara Platform evolves and is improved upon with each monthly release, and while the application server was originally derived from GlassFish and shares many similarities - the two products are not the same. 

New Webinar Series! Dismiss the Myths: Get to Know Jakarta EE

Last week, we announced our exciting new webinar series, 'Dismiss the Myths: Get to Know Jakarta EE (Java EE). This is a series of 6 webinars, every Wednesday at 3.00pm BST for the next 6 weeks - with the first one taking place this Wednesday! 

Our CEO and FounderSteve Millidge is leading this series, taking one common misconception about Jakarta EE ( previously Java EE ) at a time. Turns out, you might be wrong in thinking Java is behind the times...

This is also the perfect webinar series if you have heard Jakarta EE or Java EE mentioned but aren't sure what it is, what the namespace change means or where its future lies. Steve will be catering to users who are new to the technology as well as long-time Jakarta EE developers. 

Introducing the Payara Kubernetes Operator

When using Kubernetes, for more complex scenarios it is not enough to start the deployment or service. You also need to execute some commands within the containers to perform some configuration or initialization of the environment.

To automate configuration or the process of initializing an environment, you can write a Kubernetes operator.The Payara Kubernetes Operator, released as a Proof of Concept or Minimum Viable Product (MVP) in our June Payara Platform release, helps you to set up a Payara cluster using the Deployment Group feature of the Payara Server.

Do You Really Need Kubernetes?

These days, it seems Kubernetes is a topic that is never too far from people's lips.  The tool, and the associated tools built around it, are talked about so often it seems it's the only subject important to developers these days - especially as the IT world becomes increasingly orientated towards cloud and microservices.

But in spite of all the conversation around Kubernetes... do you really need Kubernetes for your environment? Or is it just another case of the next 'new and shiny' object,  with people distracted by the novelty and possibility, rather than the facts? In this blog, I'll take a closer look at why Kubernetes might be a case of the hype outweighing the helpfulness in most cases. 

Shape The Future of Payara Platform Through GitHub

Payara Platform is an open source middleware platform. This means that we are proud to nurture and grow an open and collaborative community, building on the needs of all to advance our software. 

Part of this ethos is inviting contributions to our software via our GitHub. Users can issue a pull request with suggested bug fixes and enhancements, and if successful, these will incorporated in our next release. We send t-shirts and stickers to contributors to say thank you! 

Since our last contributor shout out in February, we've implemented many useful pull requests, from valued long time contributors Alexander Pinchuk and Oliver Bertuch, as well as new contributorAngelTG2.

We also wanted to take the opportunity to point out that contributions aren't the only way to shape the future of Payara Platform. You can also up or down vote the open issues - new features, enhancements and bug fixes - that would make the most positive difference to YOUR development and applications. Find out more below. 

Introduction to New AutoScale Feature Available in Payara Server


Running your application sometimes requires multiple instances to handle the requests of the users. Within the Payara Platform, the Domain Data Grid helps you configure your environment to run your application in a cluster. Besides the setup of a cluster itself, many applications can benefit from an environment that scales dynamically.

The number of instances must increase when the application usage peaks and should decrease when activity is low to reduce the resource usage and the corresponding costs associated with it. The introduction of the AutoScale feature in Payara Server Community 5.2021.4  helps us achieve this dynamic scalability.

What's New in the June Payara Platform Release?

The June 2021 Payara Platform release is here!  Payara Enterprise 5.28.1 includes 5 bug fixes and 2 component upgrades along with a community contribution from AngelTG2 for improving loading time for REST applications when there are many password aliases.

In addition to the bug fixes, component upgrades, and community contribution improvement, the Payara Community 5.2021.4  release also introduces a new AutoScale feature in Payara Server to achieve dynamic scalability of instances based on application usage.

You can download Payara Platform Community 5.2021.4 here and request Payara Platform Enterprise 5.28.1here. 

Read more below to find out the details.

 Payara Platform  Download Here 

The Payara Monthly Catch for May 2021

The big community news of this month was the release of Jakarta EE 9.1! The Eclipse Foundation brought out Jakarta EE 9.1 Platform and Web Profile specifications and related TCKs - the first release since the breaking namespace change to jakarta. We've rounded up our articles & announcements on this subject below - and watch this space, as Payara Platform is very close to launching our own Compatible Implementation. 

We also released the results of our Payara Platform Survery 2021 . Read in fullhere, including what we've learnt about the infrastructure you are using with the Payara Platform, what features you want to see, and our findings on how our users are adopting MicroProfileAPIs and new Jakarta EE versions. 

We're already using the results of the survey to shape content that responds to recurring issues users are encountering. See Rudy'sblog on why you might be finding Payara Server slow and an easy fix you may not have tried, as issues with deployment speed was a common theme in our survey results. 

As well as Payara's own content, the 'Monthly Catch' also includes our pick of the best from Java EE/Jakarta EE, MicroProfile, Java SE and DevOps influencers and authors this month, and wider industry news. We hope you enjoy, and make sure you are following us onLinkedIn and Twitter, and signed up to our blog, to get this content as it comes! 

GlassFish 6.1 Should Not Be Used In Production: Here’s Why

Earlier this week, Jakarta EE 9.1 was released. This is an update to Jakarta EE 9, adding support for JDK 11 - you can read more about it in our bloghere.

Alongside the Jakarta EE 9.1 release, GlassFish 6.1 has been released as a Compatible Implementation

However, although GlassFish is still used by many - a legacy of the time it was supported by Oracle - we would argue it is NOT a good choice for running your enterprise applications in production.

If you are considering updating to more recent GlassFish versions, it might be better to consider more reliable, supported, and up-to-date alternatives. In this blog, I explain why GlassFish 6.x is not the best choice for your mission critical deployments.

Jakarta EE 9.1 Launches!

Payara Services are celebrating the release of Jakarta EE 9.1 Platform and Web Profile specifications and related TCKs.

With Jakarta EE 9.1, global source community Eclipse Foundation brings to Java developers the first incremental Jakarta EE release since the new namespace was introduced last year. Read the Eclipse Foundation announcement here - featuring a quote from our Founder and CEO Steve Millidge.

Payara's team have not only worked hard to ensure Jakarta EE 9.1 applications can be run in Payara Platform 5, but Payara Platform 6 alpha one is very close to being ready as a Compatible Implementation. Watch this space! 

Did You Know? If Payara Server Seems Slow, Try This

The 2021 Payara Platform Survey was completed in April. Our surveys help us shape the future of Payara Server and Payara Micro as they give us an idea what features and enhancements the community would like to see in future releases. Surveys also provide an opportunity for you to tell us what needs to improve and after finding 14% of respondents indicated the speed of deployment is not as fast as they would like, we wanted to share a tip.

Payara Platform 2021 Survey Results

Payara Micro 5によるUber JARの作成

Payara Microでは、Webアプリケーションを自己完結型で簡単に実行することができます。20165月のPayara Serverリリースからは、WARファイルの内容とPayara Microを構成するクラスやリソースを束ねる “Uber JAR” を作成する簡単な方法があります。

この “Uber” Jarは、Dockerコンテナ内でアプリケーションを実行するための最良の方法ではないことに注意してください。アプリケーションに小さなコード変更を加えるたびに、バイナリ全体のアップデートが必要になるためです。より良い方法は、Payara Microインスタンスを起動して、インストールが必要なアプリケーションを指定することです。詳細については Payara Micro Docker Image documentation をご覧ください。

(最終更新日 2021/04/06)

Getting Started with Jakarta EE 9: Context And Dependency Injection (CDI)

In this series about getting started with Jakarta EE 9, we look at various specifications and how you can use them for your next application. In the previous blogs of this series, we set up our development environment and had a closer look at implementing REST endpoints.

This time, I will explain a few features of Context and Dependency Injection (CDI). The CDI specification is an important backbone of Jakarta EE as it brings several specifications together. Over the years, it became more and more important as an increasing number of specifications started using CDI as the basis for it.

In this blog, I will tell a bit about the different scopes, the interceptor mechanism, and the Event system.

6 Vital Steps to Enhancing IoT Security

You may have heard the term ‘Internet of Things’ or IoT, referred to with increasing frequency in technology and business circles. It is cited more and more frequently as key in the future of computing, the workplace, consumer technology, travel and more.

But what do we mean when we say Internet of Things – and what implications does it have when it comes to security?

How to Configure the HSTS Header on Payara

The HTTP Strict-Transport-Security response header (often abbreviated as HSTS) tells the browser that it should access the website only using HTTPS, instead of using HTTP.

The May 2021 releases of the Payara Platform, Community version 5.2021.3 and Enterprise version 5.28.0, allow you to configure the HSTS header.

カスタム SSL証明書を用いた Payara Serverのセキュア化

Payara Serverの管理タスクで最も多いものの1つは、他のWebサーバーと同様に、HTTPプロトコルやPayara Serverへのリモート・アクセスをセキュアにするための電子証明書のセットアップです。皆様は自己署名証明書または信頼できる認証局の署名入り証明書のいずれかをお持ちでしょうが、どちらの場合も証明書をPayara Serverのドメインに追加してセキュアな通信に用いるのはとても簡単です。

May Payara Roadmap Overview Webinar

We kicked off the year with the Payara Roadmap for 2021. In this January webinar, Steve provided: detail on benefits of the Jakarta EE model; how the Payara Platform is evolving and moving toward Payara 6; updates and progress of the Payara Cloud project, our new PaaS product; and latest news regarding the next major OpenJDK release - JDK 17 Long Term Support (LTS) and what that means for Payara Platform.

Find a full-write up here:https://blog.payara.fish/payara-roadmap-2021 

In this May update, Steve gives a check-in on how we are progressing along our roadmap, with a retrospective on the year so far and details on what the rest of the year is set to look like. He provides a snapshot of where we are in relation to the plans and projects he mapped out at the beginning of the year.

Steve also discusses the results of the Payara Platform 2021 Survey. If you haven't had a chance to read the full report and summary yet, make sure you do by following this link:https://blog.payara.fish/2021-payara-platform-survey-results

The Payara Monthly Catch: April 2021

It's been an incredibly exciting month for Team Payara! We were honoured with a Queen's Award for Enterprise. This is the UK's most prestigious business award, often called the 'Knighthood for Businesses' and our award particularly recognises our international sucess. CEO and Founder Steve Millidge thanked the entire team in his blog, which also went more into detail about what this means for the wider Jakarta EE and MicroProfile community. 

In other Payara Services news, we're also 'buzzing' about our new Charity of the Year, the Bumblebee Conservation Trust - and see Payaran Lenny Primak below on Adam Bien's podcast, and Rudy De Busscher joining forces with IntelliJ IDEA! 

Community highlights included the release of the latest version of IntelliJ IDEA, with our engineersworking hard to update our Payara Platform pugins accordingly due to high demand from the community. We were also excited by news of the newMicrosoft Build of OpenJDK. 

Read more about all this and more in the below round-up of news, articles, videos and podcasts. 

What's New in the Payara Platform May Release?

The May Payara Platform release is here!  With the Payara Enterprise 5.28.0 and the Payara Community 5.2021.3 releases, we're introducing an HSTS security feature, an improvement to the Admin Console performance, better integration of Hazelcast along with new functionalities provided in Hazelcast 4.2, and a couple useful security and bug fixes. Meanwhile, updates to ecosystem components IntelliJ and the Flight Recorder Notifier, offer more functionality to Payara Platform users.

You can download Payara Platform Community 5.2021.3 here and request Payara Platform Enterprise 5.28.0 here. 

Read more below to find out the details.

 Payara Platform  Download Here