Author: M. Dahm

  • Dynamic container configuration (using KeyCloak as an example)

    /

    by

    Reading Time: 2 Minuten

    Docker images often are parameterized through startup arguments or environment variables. There are often situations however, where certain aspects cannot be configured this way. Instead, you either have to create images for all possible configurations, or implement an extended configuration strategy. In this article we show how to parameterize a KeyCloak container with dynamic redirect…

  • Descriptive names for column constraints in Hibernate

    Hibernate (re-)generates names for database constraints such as foreign keys or unique columns when creating a schema. However, the names for indexes and unique keys are not very descriptive, since they are created from a hash string of the table and column name. Unreadable technical names may seem just to be an insignificant ugliness, but…

  • Extensible and configurable WebSocket messages

    /

    by

    Reading Time: 2 Minuten

    WebSockets provide a flexible bi-directional way to communicate between the web browser and the backend server. In particular, it allows the server to send push messages to the client in order to inform it about data updates and the like. However, the Java API only allows for static Object encoders and decoders, i.e. they cannot…

  • Conditional evaluation in Docker files

    /

    by

    Reading Time: 2 Minuten

    In general, a Docker build file (Dockerfile) should be usable on any Docker server. In some cases however, you would like to have something like a conditional ‘IF’ statement in your Dockerfile. To give an example: It is common usage to use apk/apt-get/curl or any other tool in your build that needs to download data…

  • Multi-target compilation with Kotlin

    /

    by

    Reading Time: 2 Minuten

    Kotlin allows to compile application code for different platforms, namely into JVM (byte code), JavaScript and native binaries. In one of our projects we were facing the challenge to use the same source code as well in a Java client as in a web application written in TypeScript/Angular. The main reason not to just copy…

  • Different JSON views from a single source

    /

    by

    Reading Time: 2 Minuten

    Getting data in JSON format via REST services from the backend server is common practice. In the simplest case a JSON provider like Jackson translates your Java objects into a JSON string and back into Java objects automatically. However, this does not cover cases where the data model (e.g., implemented as JPA entities) is different from…

  • Customizing application properties with JBoss EAP/Wildfly

    /

    by

    Reading Time: 2 Minuten

    Usually developers have to create and deploy different versions of their application: For local development, testing, training, production, … Different third-party and system dependencies for those different versions will preferably be configured via the container, e.g. data sources, JMS, topics, mail server, etc. However, most applications also contain several custom application properties such as the…

  • Shrinking patched JBoss EAP server to a reasonable size

    /

    by

    Reading Time: 2 Minuten

    As explained in the blog entry Upgrading and patching the Red Hat JBoss Enterprise Application Platform JBoss EAP offers the possibility to conveniently update the server installation with the latest patches. However, the way this is implemented leaves all previous versions and patches of your modules behind. I.e., older versions of the JAR files will not be used…

  • A classification of migration projects

    /

    by

    Reading Time: 3 Minuten

    In this article we will try to define a classification of projects that deal in one way or the other with the migration of code or data. This classification is not strictly hierarchical, since in general too many aspects overlap. However, the intent of this document is not to deliver a scientifically precise hierarchy, but to provide you with…

  • Database migration projects with GuttenBase – Copying done right

    /

    by

    Reading Time: 2 Minuten

    There are many tools to visualize or analyze databases. You will also find lots of programs to copy databases between different vendors. However, we experienced  these tools are not flexible enough for our migration projects. They fail because, e.g., they cannot map the various data types between different databases correctly, or because the amount of…

WordPress Cookie Notice by Real Cookie Banner