edit | blame | history | raw

radiozentrale

Eine Webanwendung zum Verwalten von Webradiosendern, Abspielgeräten und zum Spielen von Radio-Livestreams über die betreffenden Abspielgeräte.

Voraussetzungen

Die radiozentrale erfordert zur Ausführung

Eine komplette Ablaufumgebung für die radiozentrale steht zum Beispiel mit der WebBox bereit.

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 und Derby Network Server beschreiben.

Bedienoberfläche

Die Bedienoberfläche setzt auf eine an die radiozentrale angepasste Version des radio-ui auf.

Webanwendung herstellen

Zum Herstellen der Webanwendung wird ein Java Development Kit (JDK) benoetigt, wie es z.B. von Azul oder dem OpenJDK-Projekt frei erhaeltlich ist. In der hier folgenden weiteren Beschreibung wird der lokale Ablageort des Java Development Kits $JDK genannt.

Desweiteren werden die folgenden Klassenbibliotheken benoetigt

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:

Nach Beschaffung des JDK und der oben angegebenen Klassenbibliotheken wird der Quellcode aus diesem Git-Repository an einen frei waehlbaren lokalen Ablageort heruntergeladen 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 Dateiverwaltung 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 Dateiverwaltung 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 Dateiverwaltung. 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 Bestandteile auf der Instanz von Tomcat, auf der sie ausgefuehrt werden soll, wie sie vom radio-ui vorgegeben sind (siehe Beschreibung dort).

Lizenz

Die Radiozentrale wird zu den Bedingungen der GNU Affero General Public License bereitgestellt. Die von der Radiozentrale verwendeten Komponenten unterliegen zum Teil anderen Lizenzen. Deren Nutzungsbedingungen sind an den Quellen der Komponenten angegeben.