Definition

Eine Property-Datei ist im Prinzip eine einfache Text-Datei, welche die Endung .properties besitzt. Die Dateiendung .properties zeigt an, dass es sich hier um eine Java-Konfigurationsdatei handelt, die von JasperReports über den ResourceBundle-Mechanismus genutzt werden kann. Wichtig für uns ist an dieser Stelle nur die Bezeichnung und die innere Struktur. Da es sich um Text-Dateien handelt reicht ein einfacher Texteditor aus, es muss jedoch die Möglichkeit bestehen die Dateiendung .properties festlegen zu können.

Einfacher ist es Jaspersoft Studio diese Arbeit erledigen zu lassen.


Konfiguration

Erstellen eines ResourceBundle


Schritt 1

Klicken sie mit der rechten Maustaste auf ein Projekt → New → Other

Schritt 2

Wählen sie dann unter Messages Editor Resource Bundle und bestätigen sie mit dem Next > Button.

Schritt 3

Wählen sie dann unter Messages Editor Resource Bundle und bestätigen sie mit dem Next > Button.


  1. Wählen sie den Ordner, in welchem sich das ResourceBundle später befinden soll
  2. Geben sie den gewünschten Basisnamen an.
  3. Fügen sie nun Schritt für Schritt die gewünschten Sprachen hinzu
  4. Per Klick auf den Finish Button wird das ResourceBundle mit den gewählten Sprachen erstellt

Schritt 4

Dadurch ist jetzt die Hauptansicht verfügbar:

In dieser ist für jede Sprache eine .properties Datei zu sehen.

Diese beginnt mit dem vorher gewählten Basisnamen und endet mit einem Ländercode.

Schritt 5


Anlegen eines neuen Schlüssels:

  1. Öffnen des Popupmenüs durch Rechtsklick → Anfügen ... 
  2. Eingabe des Schlüsselnamens
  3. Anlegung des Schlüssel per Klick auf OK

Schritt 6

Eingabe der Werte:

  1. Auswahl des zu bearbeitenden Schlüssels in der Baumansicht
  2. Eingabe der Werte im entsprechenden Textbereich einer Sprache

Schritt 7

Die Tableiste unten ist zu beachten. Hier kann zwischen folgenden Ansichten gewechselt werden:

  • Grafische Ansicht (auf den vorherigen Bildern zu sehen)
  • Textuelle Ansicht (auf nebenstehenden Bild zu sehen)
  • Erstellungs 



Einbinden der Sprachdateien in die Formularvorlage

Nach dem letzten Arbeitsschritt stehen die Sprachdateien dem Nuclos bzw. der Jasperreports-Komponente im Nuclos zur Verfügung.



Im Formular werden an den Stellen, wo eine Übersetzung notwendig ist, Platzhalter definiert. Diese Platzhalter werden durch Textfelder mit den entsprechenden Schlüsseln aus der zuvor erstellten Properties-Datei deklariert.

                  anfrage.thema = Anfrage     in Bundle_de.properties                       
                  $R{anfrage.thema}          im Formular

Natürlich muss der Jasperreports- Komponente in Nuclos noch mitgeteilt werden, wo sich die Übersetzungen (Properties-Dateien) befinden. Dafür ist lediglich der Name der Standardsprache Bundle.properties ohne .properties in der entsprechenden Eigenschaft des Formulars anzugeben. Der Java BundleRecource-Mechanismus sorgt dafür, dass anhand der eingestellten Lokale (Sprache) die richtige Übersetzung (Properties-Datei) herangezogen wird. Der Mechanismus erkennt die Dateinamen Bundle_en oder Bundle_de. Der Dateinamen muss nicht zwingend Bundle heißen! Es ist jegliche Bezeichnung möglich, jedoch müssen _en, _de bzw. andere Länderkürzel konstant angefügt werden.

!!Diese Einstellung muss auch für alle Unterformulare gesetzt werden!!





Das Formular wird über Konfiguration → Report → Formular o. Report ins Nuclos geladen. Will man eine andere Sprache wählen, kann der Datensatz geklont und der geklonte Datensatz mit der anderen Sprache versehen werden.



Hinzufügen weiterer Regionalschemata


Auch nachdem eine Property-Datei angelegt wurde, können weitere Sprachen hinzugefügt werden. In diesem Beispiel sind die Schlüssel und Werte bereits gesetzt, bevor eine neue Datei erzeugt wird. Selbstverständlich können die Schemata auch erst erzeugt werden und danach die Schlüssel und Werte bearbeitet werden.