Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

HOW-TO ANWENDUNGSENTWICKLER STAND: JUL 2026 GILT FUER NUCLOS 4.2026.X

Auf dieser Seite


BusinessException

Codeblock
java
java
throw new BusinessException("Bitte geben Sie ein Lieferdatum an"); // vor v4.2025.15
throw new BusinessException(true, "Bitte geben Sie ein Lieferdatum an"); // ab v4.2025.15

InputRequiredException

Codeblock
java
java
throw new InputRequiredException(
        new InputSpecification(InputSpecification.CONFIRM_YES_NO, "my.nuclet.input.key.1",
        "Soll eine Bestätigung gesendet werden?", "Rückfrage")); // vor v4.2025.15

throw new InputRequiredException(
        new InputSpecification(InputSpecification.CONFIRM_YES_NO, "my.nuclet.input.key.1",
        true, "Soll eine Bestätigung gesendet werden?", "Rückfrage", Locale.GERMAN)); // ab v4.2025.15

MessageContext

Codeblock
java
java
MessageContext.sendMessage("Das Formular wurde erzeugt und im Laufwerk abgelegt."); // vor v4.2025.15
MessageContext.sendMessage(true, "Das Formular wurde erzeugt und im Laufwerk abgelegt."); // ab v4.2025.15

======================================================================

SNIPPET 3 - Abschnitt 'Der optimale Weg'
Vorher loeschen: den einen vorhandenen Code-Block in diesem Abschnitt.

BusinessException

Codeblock
java
java
throw new BusinessException("Bitte geben Sie ein Lieferdatum an"); // vor v4.2025.15
throw new BusinessException("org.nuclet.handel.enter-delivery-date",
        "Bitte geben Sie ein Lieferdatum an", Locale.GERMAN); // ab v4.2025.15

InputRequiredException

Codeblock
java
java
throw new InputRequiredException(
        new InputSpecification(InputSpecification.CONFIRM_YES_NO, "org.nuclet.handel.input.key.1",
        "Soll eine Bestätigung gesendet werden?", "Rückfrage")); // vor v4.2025.15

throw new InputRequiredException(
        new InputSpecification(InputSpecification.CONFIRM_YES_NO, "org.nuclet.handel.input.key.1",
        "org.nuclet.handel.send-confirmation", "Soll eine Bestätigung gesendet werden?",
        "Rückfrage", Locale.GERMAN)); // ab v4.2025.15

MessageContext

Codeblock
java
java
MessageContext.sendMessage("Das Formular wurde erzeugt und im Laufwerk abgelegt."); // vor v4.2025.15
MessageContext.sendMessage("org.nuclet.handel.pdf-created-and-stored",
        "Das Formular wurde erzeugt und im Laufwerk abgelegt.",
        /*no-title*/ null, Locale.GERMAN); // ab v4.2025.15

======================================================================

SNIPPET 4 - Abschnitt 'Lokalisierung verhindern'
Vorher loeschen: den einen vorhandenen Code-Block in diesem Abschnitt.

Codeblock
java
java
throw new BusinessException(machineApi.getErrorMessage()); // vor v4.2025.15
Auszug
hiddentrue

Nuclos Regeln lokalisieren: BusinessException, InputRequiredException, MessageContext, Lokalisierungsschlüssel, Locale, withArgs, DoNotTranslate.

globe with meridians Sprache: Deutsch · English

hammer and wrench Regeln lokalisieren

Regelmeldungen übersetzbar machen – BusinessException, InputRequiredException und MessageContext mit Schlüsseln, Locale und Platzhaltern.

Status
colourPurple
titleHow-to
Status
colourBlue
titleAnwendungsentwickler
Status
colourGreen
titleStand: Jul 2026
Status
colourGrey
titlegilt fuer Nuclos 4.2026.x

Panel
bgColor#F4F5F7

Auf dieser Seite

Inhalt
maxLevel2
minLevel2

Überblick

Regelmeldungen an den Benutzer lassen sich seit v4.2025.15 lokalisieren. Unterstützung bieten die Klassen BusinessException, InputRequiredException und MessageContext. Übergib nach Möglichkeit immer eine Locale – sonst versucht Nuclos, das Nuclet über das Package zu ermitteln.

Der schnelle Weg

Für statische Texte: automatische Schlüsselerzeugung per Boolean-Flag true.

Codeblock
languagejava
hier
Codeblock
languagejava
throw new BusinessException(new DoNotTranslate(machineApi.getErrorMessage()));

Der optimale Weg

Vergib einen festen, eindeutigen Lokalisierungsschlüssel. So kannst du den Ausgangstext später ändern, ohne dass Übersetzungen komplett neu aufgebaut werden.

 // ab v4.2025.15

======================================================================

SNIPPET 5 - Abschnitt 'Meldungen parametrisieren'
Vorher loeschen: den leeren Code-Block in diesem Abschnitt.

BusinessException

Codeblock
java
Codeblock
language
java
throw new BusinessException(new DoNotTranslate(machineApi.getErrorMessage()));

Lokalisierung verhindern

Text als DoNotTranslate-Objekt übergeben:

"Die Liefermenge " + iMenge + " ist überschritten?"); // vor v4.2025.15
throw new BusinessException("org.nuclet.handel.delivery-quantity-exceeded",
        "Die Liefermenge {} ist überschritten?", Locale.GERMAN).withArgs(iMenge); // ab v4.2025.15

InputRequiredException

Codeblock
java
Codeblock
language
java
throw new BusinessException(InputRequiredException(
        new DoNotTranslate(machineApi.getErrorMessage()));

Meldungen parametrisieren

Dynamische Teile über withArgs/withMessageArgs – übersetzt wird nur das Template mit {}-Platzhaltern:

InputSpecification(InputSpecification.CONFIRM_YES_NO, "org.nuclet.handel.input.key.2",
        "Ist die Liefermenge " + iMenge + " korrekt?", "Rückfrage")); // vor v4.2025.15

throw new InputRequiredException(
        new InputSpecification(InputSpecification.CONFIRM_YES_NO, "org.nuclet.handel.input.key.2",
        "org.nuclet.handel.confirm-quantity", "Ist die Liefermenge {} korrekt?",
        "Rückfrage", Locale.GERMAN)
        .withMessageArgs(iMenge)); // ab v4.2025.15

MessageContext

java
Codeblock
java
java
MessageContext.sendMessage("Das Formular " + sName + " wurde erzeugt und im Laufwerk abgelegt."); // vor v4.2025.15
MessageContext.withMessageArgs(sName).sendMessage("org.nuclet.handel.pdf-created-and-stored",
        "Das Formular {} wurde erzeugt und im Laufwerk abgelegt.",
        /*no-title*/ null, Locale.GERMAN); // ab v4.2025.15

Codeblock
language

Verwandte Seiten

globe with meridians Lokalisierung

...

Übersicht.

Öffnen →

gear Regelwerke

...

Regeln.

Öffnen →

electric plug Unterstützende Klassen

...

Regel-API.

Öffnen →