blog

#HOWTO: Simple load-testing with Apache Benchmark

Testing your application’s performance during development as a single user is easy but often misleading. With writing unit- and integration-tests you make sure your main use cases and algorithms work as expected and cover the requirements of the business. Testing the performance of your application under the expected load is often neglected and after deploying…

Read More

#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: { “name”: “pdf-preview-react”,…

Read More

#HOWTO: Simple database documentation with SchemaSpy

Recently I was looking for a simple solution to generate visual documentation of the underlying database. The solution should be easy to use, database vendor independent and automatable e.g. during the CI pipeline. Therefore I found SchemaSpy (GitHub – Homepage) which is a single .jar file and is able to generate nice-looking web-based documentation like the following: Sample…

Read More

#HOWTO: MicroProfile JWT Authentication with Keycloak and React

F or 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 sends a JWT token with each request and thus the applications know about his metadata…

Read More

#REVIEW: What’s new in Spring Boot 2.1

Recently Andy Wilkinson (@ankinson) from the Spring Boot core team announced the release of Spring Boot 2.1. During the last days, I played around with the new version and will present you the most important updates from my point of view. Spring Boot 2.1.0 has been released: https://t.co/01acMWbF0P. There’s lots of good stuff in this one,…

Read More

#REVIEW: Making first place at my second Hackathon

From the 19th to 21st of October 2018 the Hackathon Digital Tech Summit took place in Nuremberg as part of the Digital Festival in Nuremberg. With more than 500 attendees and 23 Hackathon teams, it was my second and yet biggest Hackathon and my team made the first place. We developed a solution for Siemens…

Read More

#HOWTO: JPA integration tests with Java EE

Writing good unit tests for your central business logic is essential for the speed of your development and a confident deployment to production. But there are also parts of your application where plain unit tests with mocking frameworks like Mockito aren’t that useful or result in a “mocking-hell”. The interaction of your application with your database is…

Read More

#REVIEW: Baeldung’s REST with Spring masterclass

Recently Baeldung announced to increase the price of his REST with Spring’s course from $ 249 to $ 299. As I am (or was) a big fan of Baeldung because of his free content about Java & Spring. I purchased the course because I thought I get high-quality and up-to-date content for this amount of money. In…

Read More

#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…

Read More

#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…

Read More

#HOWTO: Simple JMS application with the embedded messaging engine in Open Liberty

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

Read More

#HOWTO: Simple CRUD table with JSF 2.3 and PrimeFaces

As my last blog post about a short intro to JavaServer Faces 2.3 got a lot of attention (my tweet got even retweeted by the Java EE Guardian’s twitter page (@javaee_guardian) I want to continue to write about JSF. Today I’ll cover one of the most common use cases for developing web-based applications: displaying/inserting/updating/deleting data…

Read More

#WHATIS? JavaServer Faces. An introduction to JSF 2.3

Scrolling through my news feed on Twitter I get flooded with new releases of npm modules and more and more blog articles about server-side rendering technologies for the latest Single Page Application frameworks like Angular, React. The following tweet summarized my current feelings: As I personally really like React and used it in the past for several projects,…

Read More

#REVIEW: Java by Comparison

In today’s post, I want to review the latest technical Java book I read. I came across the book “Java by Comparison” by Simon Harrer, Jörg Lenhard, and Linus Dietz while I was reading Venkat Subramaniam’s blog. Venkat did the foreword of this book and as I am a fan of him, I instantly bought the book….

Read More

#REVIEW: My first Hackathon

From July 10th to the 11th I took part in the Hackathon HACK|BAY which was organized by the tech incubator Zollhof in Nuernberg. Even if I participated in several coding challenges and a company internal Hackathon, this was my first Hackathon with a jury and multiple competing teams. The event was sponsored by several local…

Read More

#HOW TO: Lazy Loading of JPA attributes with Hibernate

Modeling your domain model with JPA is quite easy and for a smaller amount of data, you can easily rely on the default configuration of JPA/Hibernate. But when it comes to performance issues in your application you need a deeper understanding of JPA/Hibernate. One big performance boost could be Lazy Loading. When it comes to Lazy Loading,…

Read More

#HOWTO: Expose git information with Spring Boot’s Actuator

In today’s #HOWTO blog post I want to show you a way to expose git information (like commit hash, commit timestamp, branch …) of the deployed application via Spring Boot’s Actuator dependency. If you are not versioning your Maven application with the <version>X.Y.Z</version> tag and you want to know which state of your application is deployed to…

Read More

#Review: Effective Java

In today’s #Review post I want to blog about one of my latest Java books: Effective Java. I was looking for a more advanced book about Java and therefore I found this book from Joshua Bloch. I bought the third edition of this book which was updated on 27th December 2017 for Java 7, 8 and 9….

Read More