<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Vaadin on JAVAPRO International</title><link>https://javapro-en.svenruppert.com/tags/vaadin/</link><description>Recent content in Vaadin on JAVAPRO International</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Sat, 23 May 2026 11:33:42 +0000</lastBuildDate><atom:link href="https://javapro-en.svenruppert.com/tags/vaadin/index.xml" rel="self" type="application/rss+xml"/><item><title>Open-Core with Core Java and Vaadin — Part 2</title><link>https://javapro-en.svenruppert.com/open-core-with-core-java-and-vaadin-part-2/</link><pubDate>Sat, 23 May 2026 11:33:42 +0000</pubDate><guid>https://javapro-en.svenruppert.com/open-core-with-core-java-and-vaadin-part-2/</guid><description>&lt;p&gt;&lt;em&gt;Editions, runtime, and quality assurance.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;All source code presented here is published on GitHub and available at &lt;strong&gt;&lt;a href="https://3g3.eu/naityh"&gt;https://3g3.eu/naityh&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="recap-of-part-one"&gt;Recap of part one&lt;/h2&gt;
&lt;p&gt;The first part of this article developed the abstract mechanics of the open-core application. From two independent Maven projects with strictly asymmetric dependency direction, a deliberately slim extension API with the contribution types &lt;code&gt;RouteContribution&lt;/code&gt;, &lt;code&gt;MenuContribution&lt;/code&gt;, &lt;code&gt;NavbarContribution&lt;/code&gt;, and &lt;code&gt;CounterEventListener&lt;/code&gt;, a &lt;code&gt;FeatureRegistry&lt;/code&gt; that discovers its contributions via the Java standard library&amp;rsquo;s &lt;code&gt;ServiceLoader&lt;/code&gt;, and a Vaadin integration consisting of &lt;code&gt;MainLayout&lt;/code&gt; and &lt;code&gt;OpenCoreRouteInitializer&lt;/code&gt;, an apparatus is now in place that can accept arbitrary contributions in ordered form, without the core needing to know their identity.&lt;/p&gt;</description></item><item><title>Open-Core with Core Java and Vaadin — Part 1</title><link>https://javapro-en.svenruppert.com/open-core-with-core-java-and-vaadin-part-1/</link><pubDate>Fri, 22 May 2026 11:33:04 +0000</pubDate><guid>https://javapro-en.svenruppert.com/open-core-with-core-java-and-vaadin-part-1/</guid><description>&lt;p&gt;&lt;em&gt;Architecture, extension API, and Vaadin integration.&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="1-introduction-and-motivation"&gt;1. Introduction and motivation&lt;/h2&gt;
&lt;p&gt;The open-core model is often reduced in discussion to questions of licensing or commercial positioning. An open-source variant of a piece of software is complemented by a commercially distributed variant that brings additional features. Anyone who actually wants to implement such a separation in an existing codebase quickly discovers that the real difficulty lies neither in the licence text nor in the choice of repository, but in the code&amp;rsquo;s architecture.&lt;/p&gt;</description></item><item><title>Vaadin + Quarkus: The New Approach for Enterprise Apps</title><link>https://javapro-en.svenruppert.com/vaadin-quarkus-the-new-approach-for-enterprise-apps/</link><pubDate>Tue, 19 May 2026 07:00:01 +0000</pubDate><guid>https://javapro-en.svenruppert.com/vaadin-quarkus-the-new-approach-for-enterprise-apps/</guid><description>&lt;p&gt;While Vaadin is commonly integrated with Spring, this article explores a powerful new full-stack solution: Vaadin with Quarkus. Quarkus provides a lightning-fast runtime and native images, complementing Vaadin’s Java-first UI, which eliminates JavaScript complexity. Readers will learn how to build scalable, reactive Vaadin Flow apps on Quarkus, covering simplified backend development, enhanced productivity with a unified Java stack, and superior deployment optimization compared to traditional approaches.&lt;/p&gt;
&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Vaadin and Quarkus are both modern Java frameworks, each excelling in its domain: Vaadin for building rich web UIs in pure Java, and Quarkus for creating cloud-native, container-first Java applications. Together, they offer a compelling alternative to traditional full-stack Java development, especially for enterprise applications.&lt;/p&gt;</description></item><item><title>Apache Causeway - GOING FURTHER</title><link>https://javapro-en.svenruppert.com/apache-causeway-going-further/</link><pubDate>Thu, 01 Jan 2026 07:00:01 +0000</pubDate><guid>https://javapro-en.svenruppert.com/apache-causeway-going-further/</guid><description>In this article we&amp;rsquo;ll continue our exploration of the Apache Causeway, a Spring Boot framework for domain-driven apps following the naked objects pattern. Our focus this time is the framework&amp;rsquo;s support for validation, on testing, and we&amp;rsquo;ll also look at some additional UI hints.</description></item><item><title>Apache Causeway - An Introduction</title><link>https://javapro-en.svenruppert.com/apache-causeway-an-introduction/</link><pubDate>Tue, 30 Sep 2025 07:00:01 +0000</pubDate><guid>https://javapro-en.svenruppert.com/apache-causeway-an-introduction/</guid><description>In this article we explore key concepts of the Apache Causeway framework, learning how it surfaces domain logic directly in the UI, with minimal boilerplate. You’ll gain a practical understanding of how Causeway supports rapid prototyping and domain-driven development.</description></item><item><title>Exploring XDEV SSE: Enhancing Spring Security for Modern Applications</title><link>https://javapro-en.svenruppert.com/exploring-xdev-sse-enhancing-spring-security-for-modern-applications/</link><pubDate>Fri, 25 Jul 2025 07:00:01 +0000</pubDate><guid>https://javapro-en.svenruppert.com/exploring-xdev-sse-enhancing-spring-security-for-modern-applications/</guid><description>&lt;p&gt;In the ever-evolving world of web application security, keeping up with best practices is crucial. XDEV’s &lt;em&gt;&lt;strong&gt;Extras for Spring Security&lt;/strong&gt;&lt;/em&gt; (XDEV SSE) addresses common challenges developers face when securing distributed systems. This open-source enhancement for Spring Security offers a suite of features to simplify secure application development.&lt;/p&gt;
&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;
&lt;p&gt;The extension provides several modules that make managing security in Spring-based applications more straightforward. Its main focus lies on &lt;strong&gt;improving OAuth2/OIDC management, session handling, and login persistence&lt;/strong&gt;, while also simplifying integration with modern frontends. One key benefit is more efficient handling of user sessions through automatic access validation—even after server restarts, security is maintained across all applications.&lt;/p&gt;</description></item><item><title>Local AI with Java: AI Integration Without Cloud Dependency</title><link>https://javapro-en.svenruppert.com/local-ai-with-java-ai-integration-without-cloud-dependency/</link><pubDate>Fri, 02 May 2025 07:00:03 +0000</pubDate><guid>https://javapro-en.svenruppert.com/local-ai-with-java-ai-integration-without-cloud-dependency/</guid><description>&lt;p&gt;The future of artificial intelligence is local. Increasingly, companies are turning to local AI models to ensure data privacy, offline capabilities, and independence from cloud providers. At &lt;a href="https://2025.europe.jcon.one/"&gt;JCON EUROPE 2025&lt;/a&gt;, the two-hour “&lt;a href="https://schedule.jcon.one/session/894517"&gt;AI-based optimization in expedition planning – a practice-oriented workshop&lt;/a&gt;” with Sven Ruppert will demonstrate exactly how to implement this in Java: high-performance, privacy-friendly AI features – directly in your own application, entirely without cloud services.&lt;/p&gt;
&lt;h2 id="focus-on-the-open-source-project-expedition-planner"&gt;Focus on the Open-Source Project “Expedition Planner”&lt;/h2&gt;
&lt;p&gt;At the center is the open-source project &lt;strong&gt;“Expedition Planner&lt;/strong&gt;”, a Java-based web application designed for planning and organizing expeditions. However, this isn’t just theory: participants will work on real-world use cases, integrating local AI models with &lt;strong&gt;Ollama&lt;/strong&gt;, utilizing &lt;strong&gt;Langchain4j&lt;/strong&gt; and &lt;strong&gt;Retrieval Augmented Generation (RAG)&lt;/strong&gt; to optimize task planning and equipment lists intelligently.&lt;/p&gt;</description></item></channel></rss>