ulrich
2017-01-31 667ccfc649de81f3b7ac87d3897d7d3cc6db682a
Herstellung beschrieben
1 files modified
78 ■■■■■ changed files
readme.md 78 ●●●●● patch | view | raw | blame | history
readme.md
@@ -2,4 +2,80 @@
Eine Webanwendung zur Verwaltung von Benutzern eines Tomcat Web- und Applikationsservers in einer Derby-Datenbank.
Weitere Beschreibungen folgen später hier.
## Webanwendung herstellen
Zum Herstellen der Webanwendung wird ein Java Development Kit (JDK) benötigt, wie es z.B. von [Azul](http://azul.com) oder dem [OpenJDK-Projekt](http://openjdk.java.net/) erhältlich ist. In der hier folgenden weiteren Beschreibung wird der lokale Ablageort des Java Development Kits `$JDK` genannt. Desweiteren werden die folgenden Klassenbibliotheken benötigt
```
Bibliothek            Datei(en)                       Ablageort lokal
----------            ---------                       ---------------
Tomcat .............. lib/servlet-api.jar ........... $CATALINA_HOME
XStream ............. xstream-1.4.7.jar ............. $JLIB
Jettison ............ jettison-1.3.3.jar ............ $JLIB
BaseLink ............ BaseLink.jar .................. $JLIB
Transit ............. Transit.jar ................... $JLIB
```
Diese sind an folgenden Orten frei erhältlich:
- [Apache Tomcat](http://tomcat.apache.org)
- [XStream](https://github.com/codehaus/xstream)
- [Jettison](https://github.com/codehaus/jettison)
- [BaseLink](https://uhilger.de/gitblit/summary/BaseLink.git)
- [Transit](https://uhilger.de/gitblit/summary/Transit.git)
Nach Beschaffung des JDK und der oben angegebenen Klassenbibliotheken wird der Quellcode aus diesem Git-Repository an einen frei wählbaren lokalen Ablageort [heruntergeladen](http://uhilger.de/gitblit/zip/?r=um.git&h=master&format=zip) und entpackt. In der hier folgenden weiteren Beschreibung wird das so entstandene Verzeichnis `um` einschließlich des absoluten Pfades dorthin `$UM` genannt. Ferner wird angenommen, dass die oben aufgeführten 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 Nutzerverwaltung werden die folgenden Kommandos ausgeführt (Beispiel für Linux):
```
cd $UM
mkdir dist build
cp -r web/* build
cd build/WEB-INF
mkdir classes lib
cd ../..
cp $JLIB/* build/WEB-INF/lib
$JDK/bin/javac -classpath $JLIB/jettison-1.3.3.jar:$JLIB/BaseLink.jar:$JLIB/Transit.jar:$JLIB/xstream-1.4.7.jar:$CATALINA_HOME/lib/servlet-api.jar -d ./build/WEB-INF/classes  src/java/de/uhilger/um/*.java src/java/de/uhilger/um/api/*.java src/java/de/uhilger/um/web/*.java src/java/de/uhilger/um/daten/*.java
$JDK/bin/jar -cf dist/um.war -C build .
rm -r build
```
Das Webarchiv der Nutzerverwaltung liegt anschließend als `$UM/dist/um.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 Nutzerverwaltung. In diesem Fall muss stattdessen der Inhalt von `$JLIB` nach `$CATALINA_BASE/lib` kopiert werden.
## Abhängigkeiten
Die Nutzerverwaltung erfordert die folgenden Bestandteile auf der Instanz von Tomcat, auf der sie ausgeführt werden soll:
```
$CATALINA_BASE/webapps/jslib/bootstrap ............ mindestens in Version 4.0 alpha 6
$CATALINA_BASE/webapps/jslib/jquery ............... mindestens in Version 1.11.1
$CATALINA_BASE/webapps/jslib/mustache ............. mindestens in Version 2.3.0
```
`$CATALINA_BASE` meint das in der der Datei [RUNNING.txt](http://tomcat.apache.org/tomcat-8.5-doc/RUNNING.txt) der Tomcat-Dokumentation so bezeichnete Verzeichnis. Nachfolgend die Quellen, von denen die obigen Abhängigkeiten bezogen werden können:
- [Bootstrap](http://getbootstrap.com)
- [jQuery](http://jquery.com)
- [Mustache](https://github.com/janl/mustache.js)
## Funktionen
Die Nutzerverwaltung stellt die folgenden Funktionen bereit
- Anlegen neuer Benutzer
- Löschen von Benutzern
- Anlegen neuer Rollen
- Löschen von Rollen
- Rollen erteilen
- Rollen entziehen
Die Bedienoberfläche passt sich an verschiedene Geräteausstattungen an (responsiv) und fügt sich neben den o.a. Funktionen in den Rahmen für Verwaltungsfunktionen einer WebBox ein.
Weitere Informationen zur Nutzerverwaltung finden sich auf der [Produktseite] (http://uhilger.de/dev/Software/Nutzerverwaltung/Nutzerverwaltung)
...dort noch nicht auf dem neuesten Stand...