Building Java AI Applications and use cases

Building AI-Powered Java Applications

Over the past few months, I’ve spoken at Java conferences and developer events worldwide about building AI-powered applications with Java. What I’ve seen is that Java developers are curious and eager to learn, but AI can seem like a big and daunting new area to get into. Most of us have demanding ...
Trimmed-down Vaadin Flow setup for V24.4

Streamlined Vaadin Flow setup for V24.4

Vaadin 24.4 was a feature release mostly focused on improving React (and Hilla) interoperability and introducing Vaadin Copilot, the new AI-powered development mode widget. However, there are also a couple of quite nice improvements for pure Java developers. Even if none of those interests you, ...
Banner image with text: Building on Gemini 1.5 as a Java developer

Building a Vaadin & Gemini AI Chatbot

This is the first part of our in-depth series on building a Vaadin & Gemini AI chatbot. In part two, we’ll add context management and UI customizations to enhance the chatbot. This blog post will detail how to build a web application that allows the user to input text prompts and receive a text ...
How to create a custom Vaadin UI for an Apache Causeway application

Creating a custom Vaadin UI for an Apache Causeway application

The Apache Causeway project implements the naked objects pattern for Java. In the naked object pattern, the UI is essentially auto-generated based on the domain objects. With only the domain model, and typically some UI hints declared on the domain model, you get a fully functioning UI “for free.” ...
Learn how to open any file with Apache Tika.

How to open any file with Apache Tika

I wrote a handy web utility for you. It can read pretty much any file, detect a mime type and some of its other (file-specific) metadata, and preview its content as text. I'm not sure if it is really useful for anybody, but at least I hope it will work as an example of using Apache Tika in your web ...
A minimal OpenID Connect (OIDC)-secured Vaadin Flow application with Spring Boot

A minimal OpenID Connect (OIDC)-secured Vaadin Flow application with Spring Boot

So, do you want or need to build a Java-based web application that is secured by a Single Sign-On (SSO) login? This is a very typical use case where you have part of an application that is not public and requires an authenticated user to access it. You could build a login mechanism yourself, but ...
Minimalist Java apps with Vaadin and Spring AI

Simplifying Java AI development with Vaadin and Spring AI

“Fight for Simplicity” has always been our motto. Personally, that has meant I want to keep simplifying my code. This post is an example of that effort, showcasing how Vaadin and Spring AI simplify the integration of AI into Java applications. Revisiting AI integration in Vaadin applications A year ...
Supercharge Your Productivity with These 5 Java Libraries

Top 5 Java libraries for boosting developer productivity in 2024

Java libraries enable developers to be more productive than with pure JDK alone. But not all Java libraries are created equal, and with dozens to choose from, finding the right ones to impact your team’s productivity can be challenging. To make the decision easier, the team at Vaadin has compiled a ...
Creating Custom Form Fields in Vaadin

Creating well-behaving form fields using CustomField

Developing well-structured Vaadin applications is essentially composing a lot of well-named custom components. Some of those components have a few more responsibilities than giving order and structure to your codebase – namely fields, the components you use in your forms to edit the properties of ...