Sign in

Sven Ruppert

@svenruppert.com
736 followers 109 following 95 posts

Java and Security by day, Bushcrafting by night

PostsRepliesMedia
Reposted by Sven Ruppert
JUnit Team @junit.org · 01/07/2026
The junit-framework repository now has an official mirror on Codeberg and is open for contributions! 👉 codeberg.org/junit-team/j... To support Codeberg's mission of providing a free and open source collaboration platform, JUnit has joined Codeberg e.V. as a member.
codeberg.org
junit-framework
Mirror of the GitHub repository at https://github.com/junit-team/junit-framework/ (PRs welcome on Codeberg!)
22615
Reposted by Sven Ruppert
Igfasouza @igfasouza.bsky.social · 30/06/2026
Happy #AsteroidDay Space runs science, hardware and software. The Java community and @pi4j is working to bring Java to #AstroPi ... What to help put Java in space ? 🚀 Everyone is welcome and every contribution counts ... #JavaOnRaspberryPi #Java
022
Reposted by Sven Ruppert
Dirk Lemmermann @dlemmermann.bsky.social · 02/06/2026
I recently updated the FlexGanttFX showcase application to use the new HeaderBar component and StageStyle.EXTENDED type. This results in a very clean and professional looking UI. Download: www.jdeploy.com/~flexganttfx... #javafx #java #ui #ux
0105
Sven Ruppert @svenruppert.com · 18/03/2026
A Vaadin Starter Project with a Clear Focus Many example projects overload the starting point by covering too many topics at once. Routing, data access, security, forms, theme customisations, and other integrations will then be presented in a single demo. This makes it more difficult for readers…
svenruppert.com
A Vaadin Starter Project with a Clear Focus
Many example projects overload the starting point by covering too many topics at once. Routing, data access, security, forms, theme customisations, and other integrations will then be presented in a single demo. This makes it more difficult for readers to recognise the project's actual structure. This project takes a different approach. The focus is on a compact framework comprising AppShell, MainLayout, several views, a small service, its own theme, and prepared internationalisation.
011
Sven Ruppert @svenruppert.com · 11/03/2026
Practical i18n in Vaadin: Resource Bundles, Locale Handling and UI Language Switching Modern web applications are rarely used only by users with the same language. Even internal tools often reach international teams or are used in different countries. A multilingual user interface is therefore not…
svenruppert.com
Practical i18n in Vaadin: Resource Bundles, Locale Handling and UI Language Switching
Modern web applications are rarely used only by users with the same language. Even internal tools often reach international teams or are used in different countries. A multilingual user interface is therefore not a luxury feature, but an important part of the user experience. The open-source project URL-Shortener also benefits from a clear internationalisation strategy. The application is intended for developers, administrators, and other users who want to manage, analyse, or distribute links.
071
Sven Ruppert @svenruppert.com · 04/03/2026
Separation of Concerns in Vaadin: Eliminating Inline Styles Vaadin Flow enables the development of complete web applications exclusively in Java. Components, layouts, navigation, and even complex UI structures can be modelled on the server side without working directly with HTML or JavaScript.…
svenruppert.com
Separation of Concerns in Vaadin: Eliminating Inline Styles
Vaadin Flow enables the development of complete web applications exclusively in Java. Components, layouts, navigation, and even complex UI structures can be modelled on the server side without working directly with HTML or JavaScript. This approach is one of the main reasons why Vaadin is especially popular in Java-centric projects. However, as a project grows in size, a typical problem arises: styling is often done directly in Java code.
030
Sven Ruppert @svenruppert.com · 16/02/2026
An unexpectedly hassle-free upgrade The starting point for this article was not a strategic architecture workshop or a long-term planned migration path, but a comparatively unspectacular step: updating the version numbers in the existing project. As part of further developing my URL shortener…
svenruppert.com
An unexpectedly hassle-free upgrade
The starting point for this article was not a strategic architecture workshop or a long-term planned migration path, but a comparatively unspectacular step: updating the version numbers in the existing project. As part of further developing my URL shortener project, a regular dependency update was due anyway. Vaadin 25 (was already available at that time, so it made sense to proceed.
030
Sven Ruppert @svenruppert.com · 09/02/2026
The Importance of UI in Import Processes Why an import needs a UI at all Import functions are often treated as purely technical details in applications. Data is read in, processed and then made available – ideally without further interaction. In practice, however, an import is rarely an invisible…
svenruppert.com
The Importance of UI in Import Processes
Why an import needs a UI at all Import functions are often treated as purely technical details in applications. Data is read in, processed and then made available – ideally without further interaction. In practice, however, an import is rarely an invisible process. It marks a transition between existing system states, between old and new data, between trust and control. This is exactly where the need for a user interface arises.
010
Sven Ruppert @svenruppert.com · 05/02/2026
Untitled Export functions are often seen as a purely technical side task: one button, one download, done. In a Vaadin-based application, however, it quickly becomes apparent that exporting is much more than writing data to a file. It is a direct extension of the UI state, an infrastructural…
svenruppert.com
Untitled
Export functions are often seen as a purely technical side task: one button, one download, done. In a Vaadin-based application, however, it quickly becomes apparent that exporting is much more than writing data to a file. It is a direct extension of the UI state, an infrastructural contract between frontend and backend, and a decisive factor for maintainability and predictability.
010
Sven Ruppert @svenruppert.com · 22/12/2025
Advent Calendar 2025 – Extracting Components – Part 2 What has happened so far In the first part, the focus was deliberately on the user interface's structural realignment. The previously grown, increasingly monolithic OverviewView was analysed and specifically streamlined by outsourcing key…
svenruppert.com
Advent Calendar 2025 – Extracting Components – Part 2
What has happened so far In the first part, the focus was deliberately on the user interface's structural realignment. The previously grown, increasingly monolithic OverviewView was analysed and specifically streamlined by outsourcing key functional areas to independent UI components. With the introduction of the BulkActionsBar and the SearchBar, clearly defined building blocks were created, each assuming a specific responsibility and freeing the view from operational details.
010
Sven Ruppert @svenruppert.com · 21/12/2025
Advent Calendar 2025 – Extracting Components – Part 1 Today marks a crucial step in the evolution of the URL shortener's user interface. After the focus in the past few days was mainly on functional enhancements – from filter and search functions to bulk operations – this day is dedicated to a…
svenruppert.com
Advent Calendar 2025 – Extracting Components – Part 1
Today marks a crucial step in the evolution of the URL shortener's user interface. After the focus in the past few days was mainly on functional enhancements – from filter and search functions to bulk operations – this day is dedicated to a structural fine-tuning: the refactoring of central UI components. This refactoring not only serves to clean up the code but also creates a clear, modular basis for future extensions as well as a significantly improved developer experience.
000
Sven Ruppert @svenruppert.com · 20/12/2025
Advent Calendar 2025 – De-/Activate Mappings – Part 2 What has happened so far? In the first part of this article, the new active/inactive model for shortlinks was introduced and anchored at the architectural level. Based on the technical rationale, it was shown that a pure expiration date is…
svenruppert.com
Advent Calendar 2025 – De-/Activate Mappings – Part 2
What has happened so far? In the first part of this article, the new active/inactive model for shortlinks was introduced and anchored at the architectural level. Based on the technical rationale, it was shown that a pure expiration date is insufficient for modern use cases and that an explicit activity status is required. Based on this, the technical foundations were laid: the core domain model was extended with an…
000
Sven Ruppert @svenruppert.com · 19/12/2025
Advent Calendar 2025 – De-/Activate Mappings – Part 1 Why an active/inactive model for shortlinks? For many users – especially those who work in the field of software development – shortlinks are much more than simple URL shorteners. They act as flexible routing mechanisms for campaigns, feature…
svenruppert.com
Advent Calendar 2025 – De-/Activate Mappings – Part 1
Why an active/inactive model for shortlinks? For many users – especially those who work in the field of software development – shortlinks are much more than simple URL shorteners. They act as flexible routing mechanisms for campaigns, feature controls, test scenarios, and internal tools. The requirements for transparency, controllability and clean lifecycle management are correspondingly high. The URL shortener receives an active/inactive model that directly supports these claims.
010
Sven Ruppert @svenruppert.com · 18/12/2025
Advent Calendar 2025 – Basic Login Solution – Part 2 What has happened so far? In the first part of "Basic Login Solution", the foundation for a deliberately simple yet structurally clean admin login was laid. The starting point was the realisation that even a technically lean URL shortener…
svenruppert.com
Advent Calendar 2025 – Basic Login Solution – Part 2
What has happened so far? In the first part of "Basic Login Solution", the foundation for a deliberately simple yet structurally clean admin login was laid. The starting point was the realisation that even a technically lean URL shortener requires a clear separation between public-facing functions and administrative operations. The goal was not complete user management, but rather a minimal access barrier that integrates seamlessly with the existing Java and Vaadin architectures.
030
Sven Ruppert @svenruppert.com · 17/12/2025
Advent Calendar 2025 – Basic Login Solution – Part 1 Introduction The administration interface of a URL shortener is a sensitive area where short links can be changed, removed, or assigned expiration dates. Although the system is often operated on an internal server or in a private environment,…
svenruppert.com
Advent Calendar 2025 – Basic Login Solution – Part 1
Introduction The administration interface of a URL shortener is a sensitive area where short links can be changed, removed, or assigned expiration dates. Although the system is often operated on an internal server or in a private environment, protecting this management interface remains a fundamental security concern. Accidental access by unauthorised users can not only lead to incorrect forwarding or data loss, but also undermine trust in the overall system.
000
Sven Ruppert @svenruppert.com · 16/12/2025
Advent Calendar 2025 – Mass Grid Operations – Part 2 What has happened so far... In the previous part, the URL shortener overview was significantly expanded. The starting point was the realisation that the last UI was heavily optimised for single operations and thus quickly reached its limits as…
svenruppert.com
Advent Calendar 2025 – Mass Grid Operations – Part 2
What has happened so far... In the previous part, the URL shortener overview was significantly expanded. The starting point was the realisation that the last UI was heavily optimised for single operations and thus quickly reached its limits as soon as larger volumes of shortlinks needed to be managed. To resolve this bottleneck, the grid was consistently switched to multiple selection, creating the technical basis for actual mass operations.
010
Sven Ruppert @svenruppert.com · 15/12/2025
Advent Calendar 2025 – Mass Grid Operations – Part 1 The next stage of the Advent calendar focuses on further development, which becomes immediately noticeable once more shortlinks are used. The previous interaction patterns in the Overview view were geared toward individual operations and yielded…
svenruppert.com
Advent Calendar 2025 – Mass Grid Operations – Part 1
The next stage of the Advent calendar focuses on further development, which becomes immediately noticeable once more shortlinks are used. The previous interaction patterns in the Overview view were geared toward individual operations and yielded only limited efficiency gains when processing many objects simultaneously. Today, this paradigm is being deliberately broken up and replaced by an interplay of new UI concepts that, for the first time, enable true multi-operation, context-sensitive work, and a much more stringent user interface.
000
Sven Ruppert @svenruppert.com · 14/12/2025
Advent Calendar 2025 – From UI Interactions to a Deterministic Refresh Architecture After the first part explained the conceptual basics and the new interactions among global search, search scopes, and advanced filters, the second part focuses on the technical mechanisms that enable these…
svenruppert.com
Advent Calendar 2025 – From UI Interactions to a Deterministic Refresh Architecture
After the first part explained the conceptual basics and the new interactions among global search, search scopes, and advanced filters, the second part focuses on the technical mechanisms that enable these interactions. It is only the revised refresh architecture – above all the interaction of safeRefresh() and RefreshGuard – that ensures that the OverviewView remains calm, deterministic and predictable despite numerous potential triggers.
000
Sven Ruppert @svenruppert.com · 13/12/2025
Advent Calendar 2025 – From Simple Search to Expert Mode: Advanced Filters and Synchronised Scopes for Power Users Since its inception, the URL shortener's continuous development has focused on two core goals: a robust technical foundation without external frameworks and a modern, productive user…
svenruppert.com
Advent Calendar 2025 – From Simple Search to Expert Mode: Advanced Filters and Synchronised Scopes for Power Users
Since its inception, the URL shortener's continuous development has focused on two core goals: a robust technical foundation without external frameworks and a modern, productive user interface that is both intuitive and efficient for power users. As part of the current development stage, an essential UI module has been revised – the OverviewView, i.e. the view in which users search, filter and manage all saved shortenings.
010
Sven Ruppert @svenruppert.com · 12/12/2025
Advent Calendar 2025 – Introduction of multiple aliases – Part 2 Today's update introduces another practical development step for the URL shortener. After the last few days were dedicated to UI refinement and the better structuring of detailed dialogues and form logic, the focus is now on an…
svenruppert.com
Advent Calendar 2025 – Introduction of multiple aliases – Part 2
Today's update introduces another practical development step for the URL shortener. After the last few days were dedicated to UI refinement and the better structuring of detailed dialogues and form logic, the focus is now on an aspect that plays a significant role in the everyday life of many users: the flexible management of multiple aliases per target URL. You can find the source code for this development status on GitHub under…
010
Sven Ruppert @svenruppert.com · 11/12/2025
Advent Calendar 2025 – Introduction of multiple aliases – Part 1 Introduction: More convenience for users With today's development milestone for the URL Shortener project, a crucial improvement has been achieved, significantly enhancing the user experience. Up to this point, working with short…
svenruppert.com
Advent Calendar 2025 – Introduction of multiple aliases – Part 1
Introduction: More convenience for users With today's development milestone for the URL Shortener project, a crucial improvement has been achieved, significantly enhancing the user experience. Up to this point, working with short URLs was functional, but in many ways it was still linear: each destination URL was assigned exactly one alias. This meant users had to create a new short URL for each context or campaign, even when the destination was identical.
000
Sven Ruppert @svenruppert.com · 10/12/2025
Advent Calendar – 2025 – From Grid to Detail: Understanding the User Experience in the Short-URL Manager The current UI from the user's point of view On the first call, the user lands in the overview. The site is built on a Vaadin grid, whose header contains a search bar, paging controls, and a…
svenruppert.com
Advent Calendar – 2025 – From Grid to Detail: Understanding the User Experience in the Short-URL Manager
The current UI from the user's point of view On the first call, the user lands in the overview. The site is built on a Vaadin grid, whose header contains a search bar, paging controls, and a small settings button with a gear icon. The most essential flow begins with the table displaying immediately understandable columns: the shortcode as a clearly typographically separated monospace value with copy action, the original URL as a clickable link, a creation time in local format, and an expiration badge that visually communicates semantic states such as "Expired", "Today" or "in n days" via theme colours.
010
Sven Ruppert @svenruppert.com · 09/12/2025
Advent Calendar – 2025 – ColumnVisibilityDialog – Part 2 Server-Side Extension: PreferencesHandler and REST Interfaces The server-side extension for dynamic column visibility follows the same design logic as the UI: simplicity, clear accountability, and a precise data flow. While the OverviewView…
svenruppert.com
Advent Calendar – 2025 – ColumnVisibilityDialog – Part 2
Server-Side Extension: PreferencesHandler and REST Interfaces The server-side extension for dynamic column visibility follows the same design logic as the UI: simplicity, clear accountability, and a precise data flow. While the OverviewView and the ColumnVisibilityDialog form the interface for the interaction, several specialized REST handlers handle the processing and persistence of the user settings. Their job is to process incoming JSON requests, validate them, translate them into domain operations, and return or store the current state.
000
Sven Ruppert @svenruppert.com · 08/12/2025
Advent Calendar – 2025 – ColumnVisibilityDialog – Part 1 From observer to designer: User control at a glance With the fourth day of the Advent calendar, the perspective on the application changes fundamentally. While in the previous expansion stages users reacted primarily to prepared structures,…
svenruppert.com
Advent Calendar – 2025 – ColumnVisibilityDialog – Part 1
From observer to designer: User control at a glance With the fourth day of the Advent calendar, the perspective on the application changes fundamentally. While in the previous expansion stages users reacted primarily to prepared structures, an element of active design is now being added. The "Overview" has so far been a central mirror of the system state: It showed all saved short links, allowed them to be filtered and provided an in-depth insight into individual objects with the detailed dialog.
000
Sven Ruppert @svenruppert.com · 07/12/2025
Advent Calendar – 2025 – Detail Dialog – Part 2 Client contract from a UI perspective In this project, the user interface not only serves as a graphical layer on top of the backend, but is also part of the overall contract between the user, the client, and the server. This part focuses on the data…
svenruppert.com
Advent Calendar – 2025 – Detail Dialog – Part 2
Client contract from a UI perspective In this project, the user interface not only serves as a graphical layer on top of the backend, but is also part of the overall contract between the user, the client, and the server. This part focuses on the data flow from the UI's perspective: how inputs are translated into structured requests, how the client forwards them, and what feedback the user interface processes.
010
Sven Ruppert @svenruppert.com · 06/12/2025
Advent Calendar – 2025 – Detail Dialog – Part 1 Classification and objectives from a UI perspective Today's Advent Calendar Day focuses specifically on the interaction level prepared in the previous parts. While the basic structure of the user interface and the layout were defined at the…
svenruppert.com
Advent Calendar – 2025 – Detail Dialog – Part 1
Classification and objectives from a UI perspective Today's Advent Calendar Day focuses specifically on the interaction level prepared in the previous parts. While the basic structure of the user interface and the layout were defined at the beginning, and the interactive table view with sorting, filtering and dynamic actions was subsequently established, it is now a matter of making the transition from overview to detailed observation consistent.
000
Sven Ruppert @svenruppert.com · 05/12/2025
Advent Calendar – 2025 – Persistence – Part 02 Today, we will finally integrate the StoreIndicator into the UI. Vaadin integration: live status of the store Implementation of the StoreIndicator Refactoring inside – The MappingCreator as a central logic. EclipseStore – The Persistent Foundation…
svenruppert.com
Advent Calendar – 2025 – Persistence – Part 02
Today, we will finally integrate the StoreIndicator into the UI. Vaadin integration: live status of the store Implementation of the StoreIndicator Refactoring inside – The MappingCreator as a central logic. EclipseStore – The Persistent Foundation Additional improvements in the core Before & After – Impact on the developer experience The source code for this version can be found on GitHub at…
020
Sven Ruppert @svenruppert.com · 04/12/2025
Advent Calendar – 2025 – Persistence – Part 01 Visible change: When the UI shows the memory state With the end of the last day of the Advent calendar, our URL shortener was fully functional: the admin interface could filter, sort, and display data page by page – performant, cleanly typed, and…
svenruppert.com
Advent Calendar – 2025 – Persistence – Part 01
Visible change: When the UI shows the memory state With the end of the last day of the Advent calendar, our URL shortener was fully functional: the admin interface could filter, sort, and display data page by page – performant, cleanly typed, and fully implemented in Core Java. But behind this surface lurked an invisible problem: All data existed only in memory.
010
Sven Ruppert @svenruppert.com · 03/12/2025
Advent Calendar – 2025 – Filter & Search – Part 02 In the previous part, we looked at the implementation on the server side. This part is now about the illustration on the user page. The source code for the initial state can be found on GitHub under . The following screenshot shows this state of…
svenruppert.com
Advent Calendar – 2025 – Filter & Search – Part 02
In the previous part, we looked at the implementation on the server side. This part is now about the illustration on the user page. The source code for the initial state can be found on GitHub under . The following screenshot shows this state of development. The focus of this Advent calendar day is on the introduction of targeted…
010
Sven Ruppert @svenruppert.com · 02/12/2025
Advent Calendar – 2025 – Filter & Search – Part 01 With the Vaadin interface described in [Part III], our URL shortener has a fully functional administration console available for the first time. It allows viewing existing short links in tabular form and managing them manually. But after just a…
svenruppert.com
Advent Calendar – 2025 – Filter & Search – Part 01
With the Vaadin interface described in [Part III], our URL shortener has a fully functional administration console available for the first time. It allows viewing existing short links in tabular form and managing them manually. But after just a few dozen entries, a clear limit becomes apparent: displaying all saved mappings is neither performant nor user-friendly. An efficient shortener must be able to scale – not only when generating, but also when searching through its data.
050
Sven Ruppert @svenruppert.com · 01/12/2025
Introduction to the URL‑Shortener Advent Calendar 2025 December 2025 is all about a project that has grown steadily in recent months: the Java-based URL Shortener, an open-source project implemented entirely with Core Java, Jetty, and Vaadin Flow. The Advent calendar accompanies users every day…
svenruppert.com
Introduction to the URL‑Shortener Advent Calendar 2025
December 2025 is all about a project that has grown steadily in recent months: the Java-based URL Shortener, an open-source project implemented entirely with Core Java, Jetty, and Vaadin Flow. The Advent calendar accompanies users every day with a new feature, a technical deep dive, or an architectural improvement – from the basic data structure and REST handlers to UI components and security aspects.
020
Sven Ruppert @svenruppert.com · 16/09/2025
For my German followers - Vaadin Flow Tutorial: Starte deine Java Web App mit meinem Template-Projekt - no Spring / JakartaEE - www.youtube.com/watch?v=Vq4Z... #vaadin #java
youtube.com
Vaadin Flow Tutorial: Starte deine Java Web App mit meinem Template-Projekt - no Spring / JakartaEE
YouTube video by Sven Ruppert - german
022
Sven Ruppert @svenruppert.com · 05/09/2025
#java #sse #realtime #events
svenruppert.com
Real-Time in Focus: Server-Sent Events in Core Java without Frameworks
Chapter 1 – Introduction 1.1 Motivation: Real-time communication without polling In modern applications, it is often necessary to provide new information to the client as quickly as possible. Classic polling, i.e. regularly querying a REST endpoint, is inefficient: it generates unnecessary network traffic and puts a load on both server and client, as requests continue even when there is no new data.
042
Sven Ruppert @svenruppert.com · 04/09/2025
#Java #Flow #Processor - Old but powerful tools inside the #JDK
svenruppert.com
Core Java – Flow.Processor
Reactive streams address a fundamental problem of modern systems: Producers (sensors, services, user events) deliver data at an unpredictable rate, while consumers (persistence, UI, analytics) can only process data at a limited speed. Without a flow control model , backlogs, storage pressure, and ultimately outages occur. With Java, java.util.concurrent.Flow provides a minimalist API that standardises this problem: Publisher → Processor → Subscriber,
053
Sven Ruppert @svenruppert.com · 03/09/2025
Signal via SSE, data via REST – a Vaadin demonstration in Core Java 1. Introduction 1.1 Motivation: Event-driven updating without polling In classic web applications, the pull principle still dominates: Clients repeatedly make requests to the server to detect changes. This polling is simple, but…
svenruppert.com
Signal via SSE, data via REST – a Vaadin demonstration in Core Java
1. Introduction 1.1 Motivation: Event-driven updating without polling In classic web applications, the pull principle still dominates: Clients repeatedly make requests to the server to detect changes. This polling is simple, but it leads to unnecessary load on the server and network side, especially if the data stock changes only sporadically. Server-Sent Events (SSE) is a standardised procedure that allows the server to signal changes to connected clients actively.
000
Sven Ruppert @svenruppert.com · 01/09/2025
#java #vaadin #designpattern #observer svenruppert.com/2025/09/01/h...
svenruppert.com
042
Sven Ruppert @svenruppert.com · 29/08/2025
svenruppert.com/2025/08/29/p... #security #hashing #java #cybersecurity #coding
svenruppert.com
Password Security: Why Hashing is Essential
Password security is an often underestimated but critical topic in software development. Databases containing millions of user logins are repeatedly compromised – and shockingly, often, it tu…
041
Sven Ruppert @svenruppert.com · 15/08/2025
Next part of the series about URL-shortener. Now, we are connecting the Service with a WEB-UI based on #vaadin flow. svenruppert.com/2025/08/15/p... #java #vaadin
svenruppert.com
Part III – WebUI with Vaadin Flow for the URL Shortener
1. Introduction and objectives The first two parts of this series established the theoretical and practical foundations of a URL shortener in pure Java. We discussed the semantic classification of …
031
Sven Ruppert @svenruppert.com · 23/07/2025
Would you like to participate for winter training in Germany and Swedish Lapland next winter? - ping me :.-) #winter #arctic #arcticadventure #nevergiveup #adventuretravel #adventure #nature #bushcraft #survival #lappland #arcticcircle #germany
021
Sven Ruppert @svenruppert.com · 12/07/2025
Just for #fun - an short #video on #youtube showing #bumblebees in action - youtu.be/1ba0ozBOYc0 #ASMR #NatureVideo #Bumblebees #Pollinators #SlowTV #Mindfulness #Buzzing #MacroVideo #FieldRecording #Insects #Wildlife #macro
youtu.be
ASMR Hummeln - Nahaufnahmen von Hummeln und Bienen auf Blüten bei der Pollensuche
YouTube video by Outdoor Skills
011
Sven Ruppert @svenruppert.com · 24/06/2025
How to connect a @vaadin.com flow ap with a rest service in core #java svenruppert.com/2025/06/24/c...
svenruppert.com
Connecting REST Services with Vaadin Flow in Core Java
1. Introduction Why REST integration in Vaadin applications should not be an afterthought In modern web applications, communication with external services is no longer a special function, but an in…
042
Sven Ruppert @svenruppert.com · 18/06/2025
www.youtube.com/watch?v=u-tS... #hashmap #java #german #youtube
youtube.com
Mutable HashMap Keys in Java – Versteckte Sicherheitslücke für deine Anwendungen
YouTube video by Sven Ruppert - german
031
Sven Ruppert @svenruppert.com · 10/06/2025
svenruppert.com/2025/06/10/s... #java #architecture #security
svenruppert.com
Short links, clear architecture – A URL shortener in Core Java
A URL shortener seems harmless – but if implemented incorrectly, it opens the door to phishing, enumeration, and data leakage. In this first part, I’ll explore the theoretical and security-re…
041
Sven Ruppert @svenruppert.com · 08/06/2025
for my german reading followers.. Mutable hashCode() + HashMap-Key = ⚠️ Gefahrenquelle Wer veränderliche Objekte als Schlüssel verwendet, riskiert unsichtbare Einträge und vieles mehr #Java #Security #MutableKey javapro.io/de/wenn-hash... #java #hashmap #mutable #vaadin
javapro.io
Wenn hashCode() lügt und equals() hilflos ist - JAVAPRO Germany
Ein tiefer Blick in Java’s HashMap-Fallen – visuell demonstriert mit Vaadin Flow Die stille Gefahr in der Standardbibliothek…
031
Sven Ruppert @svenruppert.com · 06/06/2025
Mutable hashCode() in Java keys = recipe for disaster ☠️ #JavaSecurity #HashMap #Java #SecureCoding #Vaadin @vaadin.com svenruppert.com/2025/06/06/i...
svenruppert.com
If hashCode() lies and equals() is helpless
A deep look into Java’s HashMap traps – visually demonstrated with Vaadin Flow. The silent danger in the standard library The use of HashMap and HashSet is a common practice in everyday Java develo…
061
Sven Ruppert @svenruppert.com · 03/06/2025
for my german reading follower.. published a post about CWE-22 CWE-377 and CWE-778 and how to harden against it. The demo is written in @vaadin.com Flow. javapro.io/de/erstellen... #vaadin #java #securecoding #cybersecurity #owasp
javapro.io
Erstellen einer einfachen Datei-Up/Download-Anwendung mit Vaadin Flow - JAVAPRO Germany
Vaadin Flow ist ein leistungsstarkes Framework zur Erstellung moderner Webanwendungen in Java, bei denen die gesamte UI-Logik serverseitig…
032
Sven Ruppert @svenruppert.com · 20/05/2025
Secure file handling with Vaadin Flow. Focused on: 🔐 CWE-22 – Path Traversal 📁 CWE-377 – Unsafe temp files 📉 CWE-778 – Weak logging Use Java, NIO and structured logging to build safe upload/download flows. #JavaDev #Vaadin #SecureSoftware #WebSecurity svenruppert.com/2025/05/20/c...
svenruppert.com
Creating a simple file upload/download application with Vaadin Flow
Vaadin Flow is a robust framework for building modern web applications in Java, where all UI logic is implemented on the server side. In this blog post, we’ll make a simple file management ap…
021
Sven Ruppert @svenruppert.com · 07/05/2025
#java #workshop #secure #coding jugsaxony.org/timeline/202...
jugsaxony.org
174. Treffen: Secure Coding Practices in Java: Von unsicher zu robust
JugSaxony Webseite
021
Sven Ruppert @svenruppert.com · 01/05/2025
me, coding on my new idea right now.. ;-) #java #security #ai #motivation
041
Sven Ruppert @svenruppert.com · 29/04/2025
for the german readers: my latest article on @golemde.bsky.social - about @eclipsestore.bsky.social #java #performance #persistence www.golem.de/news/eclipse...
golem.de
Golem.de: IT-News für Profis
011