From c00150150fa44b838fcde444e99a7e12379827d2 Mon Sep 17 00:00:00 2001
From: ulrich <undisclosed>
Date: Sat, 24 Mar 2018 08:33:08 +0000
Subject: [PATCH] Readme angepasst

---
 README.md |   75 ++++++++++++++++++++++++++++++++-----
 1 files changed, 65 insertions(+), 10 deletions(-)

diff --git a/README.md b/README.md
index 8c0ed3b..3d444d8 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,10 @@
 # radiozentrale
 
-Eine Webanwendung zum Abspielen von Webradiosendern auf unterschiedlichen Geräten.
+Eine Webanwendung zum Verwalten von Webradiosendern, Abspielgeräten und zum Spielen von Radio-Livestreams über die betreffenden Abspielgeräte.
 
-## Im Bau
+### Bedienoberfläche
 
-Diese Anwendung ist noch im Bau. Der neueste lauffähige Stand erscheint demnächst als Prototyp und wird dann von hier aus per Verknüpfung zugänglich.
+Die Bedienoberfläche setzt auf eine an die radiozentrale angepasste Version des [radio-ui](/gitblit/docs/web!radio-ui.git) auf.
 
 ## Voraussetzungen
 
@@ -14,16 +14,71 @@
 + einen Server wie beispielsweise  [Tomcat](https://de.wikipedia.org/wiki/Apache_Tomcat)
 + eine [Derby-Datenbank](https://de.wikipedia.org/wiki/Apache_Derby)
 
-Eine fertig ausführbare Ablaufumgebung für die radiozentrale steht zum Beispiel mit der [WebBox](https://uhilger.de/dev/Software/WebBox/WebBox) bereit.
+Eine komplette Ablaufumgebung für die radiozentrale steht zum Beispiel mit der [WebBox](/data/ulrich/prg/webbox/) bereit.
 
-### Bedienoberfläche
+Anstelle der WebBox können Java, Tomcat und Derby auch getrennt voneinander installiert und ausgeführt werden, wie es z.B. die Beiträge [Tomcat auf Linux](/data/ulrich/artikel/2013/05/tomcat-auf-linux.htmi) und [Derby Network Server](/data/ulrich/artikel/2018/02/derby-server-artikel.htmi) beschreiben. 
 
-Die Bedienoberfläche setzt auf eine für die Schnittstelle der radiozentrale angepasste Version des [radio-ui](/gitblit/docs/web!radio-ui.git) auf.
+## Webanwendung herstellen
 
-## Installation
+Zum Herstellen der Webanwendung wird ein Java Development Kit (JDK) benoetigt, wie es z.B. von [Azul](http://azul.com) oder dem [OpenJDK-Projekt](http://openjdk.java.net/) frei erhaeltlich ist. In der hier folgenden weiteren Beschreibung wird der lokale Ablageort des Java Development Kits `$JDK` genannt.
 
-Hier noch die Installation beschreiben
+Desweiteren werden die folgenden Klassenbibliotheken benoetigt
 
-## Herstellung aus dem Quellcode
+```
+Bibliothek            Datei(en)                       Ablageort lokal
+----------            ---------                       ---------------
+Tomcat .............. lib/servlet-api.jar ........... $CATALINA_HOME
+derbyclient ......... lib/derbyclient.jar ........... $CATALINA_BASE
+XStream ............. xstream-1.4.7.jar ............. $JLIB
+Jettison ............ jettison-1.3.3.jar ............ $JLIB
+Transit ............. Transit.jar ................... $JLIB
+BaseLink ............ BaseLink.jar .................. $JLIB
+```
+Diese sind an folgenden Orten frei erhaeltlich:
 
-Hier noch die Herstellung aus dem Quellcode beschreiben
+- [Apache Tomcat](http://tomcat.apache.org)
+- [Apache Derby](http://db.apache.org/derby)
+- [XStream](https://github.com/codehaus/xstream)
+- [Jettison](https://github.com/codehaus/jettison)
+- [Transit](/gitblit/docs/Transit.git)
+- [BaseLink](/gitblit/docs/BaseLink.git)
+
+Nach Beschaffung des JDK und der oben angegebenen Klassenbibliotheken wird der Quellcode aus diesem Git-Repository an einen frei waehlbaren lokalen Ablageort [heruntergeladen](http://uhilger.de/gitblit/zip/?r=radiozentrale.git&h=master&format=zip) und entpackt. In der hier folgenden weiteren Beschreibung wird das so entstandene Verzeichnis `radiozentrale-master` einschliesslich des absoluten Pfades dorthin `$RZ` genannt. Ferner wird angenommen, dass die oben aufgefuehrten Klassenbibliotheken lokal an Orten abgelegt sind, deren Pfade mit den Platzhaltern `$JLIB` und `$CATALINA_HOME` gemeint sind. Anstelle der Platzhalter in den folgenden Kommandos muss also der absolute Pfad des lokalen Ablageortes eingesetzt werden.
+
+Zur Herstellung der radiozentrale werden die folgenden Kommandos ausgefuehrt (Beispiel fuer Linux):
+
+```
+cd $RZ
+mkdir dist
+mkdir build
+cp -r web/* build
+cd build/WEB-INF
+mkdir classes
+mkdir lib
+cd ../..
+cp $JLIB/* build/WEB-INF/lib
+
+$JDK/bin/javac -classpath $JLIB/jettison-1.3.3.jar:$JLIB/Transit.jar:$JLIB/BaseLink.jar:$JLIB/xstream-1.4.7.jar:$CATALINA_HOME/lib/servlet-api.jar -d ./build/WEB-INF/classes src/java/de/uhilger/radiozentrale/api/*.java src/java/de/uhilger/radiozentrale/web/*.java src/java/de/uhilger/radiozentrale/daten/*.java
+
+cp src/java/logging.properties build/WEB-INF/classes
+$JDK/bin/jar -cf dist/rz.war -C build .
+rm -r build
+```
+
+Das Webarchiv der rediozentrale liegt anschliessend als `$RZS/dist/rz.war` fertig zum Deployment bereit.
+
+### Distributionsalternative
+
+Das Kommando `cp $JLIB/* build/WEB-INF/lib` kann auch weggelassen werden, dann sind die Klassenbibliotheken nicht Teil des Webarchivs der rediozentrale. In diesem Fall muss stattdessen der Inhalt von `$JLIB` nach `$CATALINA_BASE/lib` kopiert werden.
+
+### Datenbanktreiber
+
+Die radiozentrale erfordert den Derby Client Datenbanktreiber (derbyclient.jar). Der Treiber ist nicht im Verteilpaket enthalten und sollte stattdessen im Ordner `$CATALINA_BASE/lib` von Tomcat hinterlegt sein. 
+
+### Abhaengigkeiten der Bedienoberflaeche
+
+Die radiozentrale erfordert zudem Javascript-Bibliotheken und Zeichensaetze, die vom [radio-ui](/gitblit/docs/web!radio-ui.git) benoetigt werden  (siehe Beschreibung dort). Diese Bestandteile muessen auf dem Server hinterlegt werden, auf dem die radiozentrale ausgefuehrt werden soll.
+
+## Lizenz
+
+Die Radiozentrale wird zu den Bedingungen der [GNU Affero General Public License](/gitblit/doc/radiozentrale.git/master/web!agpl.txt) bereitgestellt. Die von der Radiozentrale verwendeten Komponenten unterliegen zum Teil anderen Lizenzen. Deren Nutzungsbedingungen sind an den Quellen der Komponenten angegeben.
\ No newline at end of file

--
Gitblit v1.9.3