thocMitJava


ThoCmitJava - Informationen zum Thema PasteByValue

PasteByValue ist ein Batch-Programm, das eine Vorlagen-Datei und n Variablen-Definitions-Dateien zu n neuen Dateien zusammenführt. Im Grunde handelt es sich um so etwas wie eine hardcodierte, d.h. statische Form von DynamicHTML.

Paste-By-Value

1. Einleitung

PasteByValue ist ein Batch-Programm, das eine Vorlagen-Datei und n Variablen-Definitions-Dateien zu n neuen Dateien zusammenführt. Im Grunde handelt es sich um so etwas wie eine hardcodierte, d.h. statische Form, von DynamicHTML.

Dabei ist PasteByValue auf der einen Seite nicht ganz so mächtig wie aktuelle XML-Varianten, auf der anderen Seite aber durch die weniger stark ausgeprägte Strenge dennoch vielfältig einzusetzen. Daneben ist das Paket PasteByValue sehr kompakt, benötigt aber JAVA Version 1.3.1.

Zum Inhalt ˆ .

2. Die Vorlagen-Datei

Die Vorlagen-Datei kann eine beliebige Text-Datei sein: z.B. eine HTML-Seite oder eine Briefvorlage.

Im folgenden möchte ich die Funktionsweise von PasteByValue an einem Serienbrief verdeutlichen. Der zugrunde liegende Text sieht dann wie folgt aus:

-#VorName#- -#NachName#-

-#Strasse#-

-#PLZ#- -#Ort#-

Sehr geehrter Herr -#NachName#-

wir wünschen Ihnen schöne Feiertage.

Mit freundlichen Grüßen.

Ihre Programmierer

Dabei stehen alle Namen zwischen "-#" und "#-" für Variablen-Namen. Die Strings, die den Anfang bzw. das Ende einer Variable signalisieren sollen sich in späteren Projekt-Dateien frei konfigurieren lassen.

Den oben dargestellten Text müssen wir jetzt nur noch als Textdatei abspeichern. Die Datei soll "serienbrief.lyo" (lyo für Layout) heißen.

Zum Inhalt ˆ .

3. Die Variablen-Definitions-Datei

Neben der Vorlagen-Datei benötigen wir eine bestimmte Anzahl von Dateien, die die benutzten Variablen mit Werten belegen. Diese Dateien müssen in einer validen XML-Datei zur Verfügung stehen.

Die Datei muss der DTD pasteByValueVar10 genügen!

Konkreten Kunden-Dateien haben also die Form:

Kunde1:

<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>

<!DOCTYPE project SYSTEM "pasteByValueVar10.dtd">

<variables>

<htmltarget>

<file dir ="/home/thomas/java/htmlTest/Web/mitJava/javaProgramme/pasteByValue/beispiel"

name ="briefKunde1"

suffix="txt"

/>

</htmltarget>

<varlist>

<variable name="VorName">

<value>

Heinz

</value>

</variable>

<variable name="NachName">

<value>

Schmidt

</value>

</variable>

<variable name="Strasse">

<value>

Müllergasse 3

</value>

</variable>

<variable name="PLZ">

<value>

10101

</value>

</variable>

<variable name="Ort">

<value>

Niergendwo

</value>

</variable>

</varlist>

</variables>

Kunde2 analog.

Hinweise :

1. Der <?xml> und <!DOCTYPE> Tag sind notwendig.

2. Der <htmltarget> Tag wird in der nächsten Version nur noch <target> heißen und in die Project-Datei wandern.

Das ganze speichern wir unter kunde1.var und kunde2.var ab.

Zum Inhalt ˆ .

4. Die Projekt-Datei

Die Projekt-Datei ist ein XML-Dokument. In ihr werden die Dateien festgeschrieben, die ein Projekt betreffen:

  • die Vorlagen-Datei
  • - die Variablen-Defintions-Dateien

In unserem Beispiel sieht die Projekt-Datei wie folgt aus:

<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>

<!DOCTYPE project SYSTEM "pasteByValueProject10.dtd">

<project>

<layout>

<file dir ="/home/thomas/java/htmlTest/Web/mitJava/javaProgramme/pasteByValue"

name ="serienbrief"

suffix="lyo" />

</layout>

<varlist>

<file dir ="/home/thomas/java/htmlTest/Web/mitJava/javaProgramme/pasteByValue"

name ="kunde1"

suffix="var" />

<file dir ="/home/thomas/java/htmlTest/Web/mitJava/javaProgramme/pasteByValue"

name ="kunde2"

suffix="var" />

</varlist>

</project>

Wie man sieht, können Datei-Endungen frei gewählt werden - wie Verzeichnisse und natürlich Dateinamen auch. Gespeichert wird die Datei in unserem Fall unter dem Namen: "beispiel.pro".

Beachten Sie die Hinweise unter (3) .

Zum Inhalt ˆ .

5. Die init-Datei

Die init-Datei verrät dem Parser welche Projekt-Datei er gerade bearbeiten soll.

Für unser Beispiel also:

<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>

<!DOCTYPE config SYSTEM "pasteByValueConfig10.dtd">

<config>

<project>

<file dir ="/home/thomas/java/htmlTest/Web/mitJava/javaProgramme/pasteByValue"

name ="beispiel"

suffix="pro" />

</project>

</config>

Wie man sieht, können bzgl. der Projekt-Dateien Datei-Endungen, Verzeichnisse und Dateinamen frei gewählt werden.

Der Name der init-Datei und deren Name ist jedoch festgelegt:

Der Dateiname muss pasteByValue.ini lauten!

Gespeichert wird die Datei in dem Verzeichnis, aus dem Mittels des Java-Interpreters thoc.pbv.PasteByValue aufgerufen wird.

Hinweise unter (3) .

Zum Inhalt ˆ .

6. Installation

1. Entpacken sie die JAR-Datei pasteByValue.jar

2. Legen Sie eine Vorlagen-, mehrere Varialben-Definitions- und eine Projekt-Datei an. Sie können auch einfach die Verzeichnisse in den vorhandenen Beispiel-Dateien "kunde1.var", "kunde2.var" und "beispiel.pro" ändern.

3. Ändern Sie die Datei pasteByValue.ini

4. Rufen sie mittels des Java-Interpreters die Datei thoc.pbv.PasteByValue auf:

java thoc.pasteByValue.PasteByValue

Zum Inhalt ˆ .

7. Downloads

Hinweis: Bei Download-Problemen, hier lang...

Zum Inhalt ˆ .


Author: Thomas Cremer

erstellt am: 10.05.2003 * letzte Änderung: 10.05.2003


Diese Seite wurde mit Hilfe von ThoC's PasteByValue v0.1 erstellt (erzeugt am: 06.06.2003 18:27:13).