#HOWTO: Create nice-looking JSF 2.3 applications with PrimeFaces 7.0

With the release of PrimeFaces 7.0 in March 2019, PrimeTek team introduced over 500 improvements featuring new components, new modern free themes, font icons, better performance various enhancements on accessibility and security. The new modern free themes were the first thing I noticed while browsing through the PrimeFaces component showcase page especially the Nova-Light theme.…

Flyway Logo

#HOWTO: Best Practices for Flyway and Hibernate with Spring Boot

Manually applying your database schema is cumbersome and error-prone. Fortunately, there are technologies for version-controlling your database scripts to automate this process across all environments. In the Java ecosystem, Flyway is one of the most popular and described as the following:   Version control for your database. Robust schema evolution across all your environments. With…

#REVIEW: SQL Performance Explained

Recently I’ve read the book SQL Performance Explained from Markus Winand (@MarkusWinand) and want to give you a review of this excellent book about SQL performance. The book contains the following chapters: Anatomy of an Index The Where Clause Performance and Scalability The Join Operation Clustering Data Sorting and grouping Partial Results Modifying Data Execution…

#WHATIS? GraalVM

With Red Hat announcing Quarkus as a … next-generation Kubernetes native Java Framework tailored for GraalVM and HotSpot, crafted from best-of-breed Java libraries and standards. I was impressed by the startup speed and memory consumption of the examples provided by Red Hat. One of the main reasons for these impressive numbers is the fact, that…

#HOWTO: Writing PostgreSQL functions with Java using PL/Java

The PostgreSQL RDBMS offers a great variety for writing server-side functions and with PostgreSQL 11 now also stored procedures. PostgreSQL comes with a language named PL/pqSQL which enhances plain SQL with control flow predicates and is similar to Oracle’s PL/SQL proprietary language. Besides this SQL-like language, PostgreSQL also offers built-in support for using Perl 5, Python and TCL as possible…

#REVIEW: Improved Java/Jakarta EE productivity with Adam Bien’s WAD (Watch and Deploy)

The productivity of your developers is crucial for the success of your project. Without fast deployments and short feedback-cycles about a new feature, you lose a lot of time just “idling”. As a Java/Jakarta EE developer, you will most likely have a local installation for the target application server and deploy the application several times…

#HOWTO: Preview PDF files with React

In addition to my blog post #HOWTO: Up- and downloading files with React and Spring Boot, I want to show you a simple way to display PDF files in the browser with React. I’m using create-react-app to bootstrap the React application. For styling purposes I’ve added semantic-ui-react and semantic-ui-css. The library for previewing the PDF files is called react-pdf: {…

#HOWTO: MicroProfile JWT Authentication with Keycloak and React

For securing your enterprise applications you have several choices which require different configuration setups. Lately, the stateless approach is the de-facto standard for securing your microservice based landscape. With the choice, your applications don’t store session data as the client mostly sends a JWT token with each request and thus the applications know about his metadata…

#HOWTO: Convert .docx files to .pdf files format loss-free

Recently I had to convert generated .docx files to .pdf files for a more convenient distribution. The Word documents contained some custom formatting and additional pictures. I tried several Java libraries for doing this job (Docx4j, XDocReport and Apache POI) but all of them couldn’t generate the output I got from manually converting the .docx files with Microsoft Word’s native…

#HOWTO: Generate documents from Word templates with Docx4j on Wildfly 14

Lately, I had the requirement to generate Word documents from specific templates and fill them dynamically with data. For this task, I compared the following Java libraries: Apache POI, iText PDF, Docx4j and XDocreports.  I compared them while using the following characteristics: Possibility to replace variables, amount of additional dependencies, lines of code to generate…