Erstellung eines kommentierten

Werbung
Inhaltsverzeichnis
1 Einleitung
iii
2 Umgebung
3
3 Funktionsweise von Servlets
5
4 Benutzung des KommVor
7
4.1
Studenten-Servlet . . . . . . . . . . . . . . . . . . . . . .
4.2
Institute-Servlet . . . . . . . . . . . . . . . . . . . . . . . 10
4.3
8
4.2.1
Die Formulare . . . . . . . . . . . . . . . . . . . . 10
4.2.2
FAQ . . . . . . . . . . . . . . . . . . . . . . . . . 15
Admin-Servlet . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.1
Die Formulare . . . . . . . . . . . . . . . . . . . . 18
4.3.2
FAQ . . . . . . . . . . . . . . . . . . . . . . . . . 24
5 Implementierung des KommVor
27
5.1
Die Dateien . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.2
Die Datenbank . . . . . . . . . . . . . . . . . . . . . . . 30
6 Ausblick
35
A Literatur und WWW-Quellen
37
i
ii
INHALTSVERZEICHNIS
Kapitel 1
Einleitung
Das kommentierte Vorlesungsverzeichnis der Informatik enthält zu allen
Lehrveranstaltungen von oder für Informatiker die Beschreibung der organisatorischen Daten und darüber hinaus weitere Informationen über
den Inhalt der Lehrveranstaltungen. Das kommentierte Vorlesungsverzeichnis hilft den Studenten, sich in ihrem Studium nach persönlichen
Interessen auszurichten.
Bisher wurde das kommentierte Vorlesungsverzeichnis jedes Jahr von
der Fachgruppe neu erstellt. Dabei traten einige Probleme auf, so z.B.
unzureichende Unterstützung von Seiten der Institute, insbesondere in
den Nebenfächern.
Daraus entstand die Aufgabenstellung für diese Studienarbeit. Das
kommentierte Vorlesungsverzeichnis sollte die Eingabe der Lehrveranstaltungen möglichst komfortabel gestalten, wiederkehrende Eingaben
sollten einfach kopierbar sein. Im Vordergrund stand also die Forderung, daß das kommentierte Vorlesungsverzeichnis die Akzeptanz der
Institute von selbst fördert.
Dazu muß das kommentierte Vorlesungsverzeichnis möglichst viele Aufgaben automatisch übernehmen. Es muß auf jedem üblichen Betriebssystem laufen. Zusätzlich sollte es jederzeit und und auf jedem Rechner
abrufbar sein. Um im Internet jeden Browser zu unterstützen, darf das
kommentierte Vorlesungsverzeichnis nur reine Html-Befehle enthalten.
Trotzdem sollte das kommentierte Vorlesungsverzeichnis immer aktuiii
iv
KAPITEL 1. EINLEITUNG
ell sein, also sowohl bei der Eingabe als auch bei der Ausgabe direkt
auf eine Datenbank zugreifen, die die Einträge der Lehrveranstaltungen enthält. Auf schwerwiegende Fehlerfälle soll das kommentierte Vorlesungsverzeichnis automatisch mit einer Email-Benachrichtigung des
Benutzers bzw. des Administrators reagieren. Der Administrator soll
automatische Emails an die Institute erzeugen können.
Diese Studienarbeit verwendet für die Implementierung des kommentierten Vorlesungsverzeichnisses eine Datenbank von MySQL. Die Internetseiten werden von Javaservlets generiert, die in Kapitel 3 genauer
erklärt werden. Die Javaservlets laufen auf einem Apacheserver. Der
Datenbankzugriff der Javaservlets wird von der Java-JDBC-API unterstützt und die Email-Funktionen werden von der Java-Mail-API bereitgestellt.
Die in dieser Studienarbeit erwähnten Software- und Hardwarebezeichnungen sind in den meisten Fällen auch eingetragene Markenzeichen
und unterliegen als solche den gesetzlichen Bestimmungen.
Beschreibung der Kapitel
Kapitel 2 beschreibt die benutzten Softwareversionen.
Kapitel 3 beschreibt die externe und interne Funktionsweise von Servlets.
Kapitel 4 ist in Form eines Benutzerhandbuchs zur Verwendung der
KommVor-Servlets geschrieben. Dieses Kapitel kann somit den Instituten in ausgedruckter Form (oder auch online) zur Verfügung gestellt
werden.
Kapitel 5 erklärt Besonderheiten der Implementation. Dazu sei auch
auf die mittels des Java-Documentation-Tools javadoc erstellten HtmlSeiten zu den einzelnen Servlets auf der CD verwiesen: Admin.Html,
Institute.Html und Studenten.Html
Kapitel 6 enthält Anregungen zur Verbesserung des kommentierten
Vorlesungsverzeichnisses, die über den Rahmen dieser Studienarbeit
hinausgingen.
Im Anhang ist der komplette Quellcode ausgedruckt. Dieser und alle
1
anderen das kommentierte Vorlesungsverzeichnis betreffende Texte sind
auf der beiliegenden CD enthalten. Die CD ist im Microsoft Windows
Dateiformat gebrannt. Ebenso enthält sie die benutzte Java-Version
JDK 1.1.5, die Java-APIs Servlet, JDBC, Mail und Activation.
2
KAPITEL 1. EINLEITUNG
Kapitel 2
Umgebung
Für die Realisierung des kommentierten Vorlesungsverzeichnisses wurden folgende Softwareversionen eingesetzt:
• Unix-Solaris 2.5.1
• MySQL 3.21
• Java JDBC-Api 1.0
• Apache Web Server 1.3.12
• Html 3.0
• Die Browser Netscape 4.7 und Microsoft Internet Explorer 5.0
• Java JDK 1.1.5
• Java Servlet-Api 2.0
• Java Mail-Api 1.0
• Java Activation-Api 1.0.1
Mit MySQL wurden die beiden Datenbanken erstellt. Das Administrationsprogramm wird mit xmysqladmin aufgerufen. MySQL stellt darüber
hinaus einen Treiber zur Verfügung, mit dem Java-Programme über die
Java JDBC-Api auf das Datenbanksystem zugreifen können.
3
4
KAPITEL 2. UMGEBUNG
Der Apache Webserver stellt mit der Jserv-Servlet-Engine die Möglichkeit bereit, Servlets auf diesem Server laufen zu lassen und aus dem
Internet auf diesem Server aufzurufen.
Alle Internet-Seiten werden von den Servlets dynamisch erzeugt und
enthalten HTML 3.0 Code, um möglichst viele Browser zu unterstützen.
Somit sollten die meisten Browser die Internet-Seiten anzeigen können.
Die zum Testen verwendeten Browser sind der Vollständigkeit halber
aufgeführt.
Die Programme wurden für die Java JDK (Java Development Kit) Version 1.1.5 geschrieben und mit ihr übersetzt. Falls diese Version auf
den Instituts-Rechnern gewechselt wird, sollte man davon ausgehen,
das aufgrund von Inkompatibilitäten bei der nächsten Änderung des
kommentierten Vorlesungsverzeichnisses auch Änderungen hinsichtlich
der neuen Version vorzunehmen sind.
Die Java Servlet-Api ist für diese Studienarbeit die wichtigste Software.
Die meisten Programmzeilen benutzen diese Api. Die Api ermöglicht
es Java-Programmen, als Servlet in einem Webserver zu laufen.
Die Java Mail-Api stellt Methoden zur Verfügung, Mails über den
SMTP-Server zu verschicken. Das kommentierte Vorlesungsverzeichnis empfängt keine Mails. Deswegen mußten keine Treiber für den
POP3-Server zum Empfangen von Mails installiert werden. Die JavaActivation-Api wird für die Mail-Api benötigt. Sie hat keine weitere
Bedeutung für diese Studienarbeit.
Kapitel 3
Funktionsweise von Servlets
Servlets sind spezielle Java-Programme, die mittels einer ServletEngine, in unserem Fall ist das Jserv des Apache-Webservers, von
dem Webserver, in unserem Fall ist das der Apache-Webserver, gestartet werden können. Wenn aus dem Internet eine Anfrage an den das
Servlet bezeichnenden URL zum Server kommt, so startet dieser das
Servlet, indem er dessen Methode init(ServletConfig) aufruft. Dieses
Servlet bleibt nun so lange am Laufen, bis der Server es durch Aufruf der Methode destroy() beendet. Dieser Fall tritt z.B. beim Herunterfahren des Servers auf. Ansonsten bleibt das Servlet am Laufen,
und bei jeder Anfrage aus dem Internet an das Servlet ruft der Server die Methode service(ServletRequest, ServletResponse) des Servlets
auf. Diese Methode behandelt die jeweilige Anfrage. Es können mehrere Anfragen gleichzeitig bearbeitet werden. Für HTTP-spezifische
Anfragen stellt das Servlet-Api eine eigene Klasse zur Verfügung: javax.servlet.http.HttpServlet. Leitet man sein Programm von dieser
Klasse ab, so ist die Methode service(ServletRequest, ServletResponse)
bereits implementiert. Sie hat dann die Aufgabe, die Anfrage auszuwerten und, falls es sich um eine korrekte HTTP-Anfrage handelt, die dieser Anfrage entsprechende Methode aufzurufen. In dieser Studienarbeit
wurden jeweils die Methoden doGet(HttpServletRequest, HttpServletResponse) und doPost(HttpServletRequest, HttpServletResponse) implementiert. Somit verstehen die Servlets die HTTP-Befehle GET, POST,
HEAD, OPTIONS und TRACE. Letztere Befehle werden von der Ober5
6
KAPITEL 3. FUNKTIONSWEISE VON SERVLETS
klasse definiert. Wenn also ein HTTP-Befehl GET an die dem jeweiligen
Servlet entsprechende URL gesendet wird, so wird die Methode doGet(. . . ) aufgerufen. Analog wird bei POST die Methode doPost(. . . )
aufgerufen.
Die Servlets bearbeiten dann diese Anfragen und schicken die Antwort
als reinen Html-Code an den Client im Internet zurück. Das kommentierte Vorlesungsverzeichnis schickt fast immer Html-Formulare zurück.
Wenn nun der Benutzer dieses Formular ausfüllt und wieder an den
Server schickt, dann muß das Servlet erkennen, um welchen Benutzer
es sich handelt. Die KommVor-Servlets machen das, indem sie bei jeder Antwort an den Client eine sogenannte JservsessionID mitschicken.
Diese ID wird dann vom Client wieder mitzurückgeschickt, und so erkennt das Servlet, zu welcher Session diese Anfrage gehört. Diese URLRewriting genannte Methode ist für die KommVor-Servlets Institute
und Admin zwingend notwendig, da sich dort alle Benutzer zuerst mit
einem Passwort identifizieren müssen. Danach müssen alle Anfragen
dieses Benutzers seinen vorigen Anfragen richtig zugeordnet werden.
Der Benutzer muß sich nicht abmelden. Auch wenn die Netzwerkverbindung unterbrochen wird, entsteht kein Schaden am kommentierte Vorlesungsverzeichnis. Ebenso können mehrere Benutzer gleichzeitig auf
das kommentierte Vorlesungsverzeichnis zugreifen.
Kapitel 4
Benutzung des KommVor
Dieses Kapitel soll den Instituten ausgedruckt und den Benutzern des
kommentierten Vorlesungsverzeichnisses online verfügbar gemacht werden. Daher wird hier der Benutzer direkt angesprochen. Da sich die
manchmal recht langen Html-Formulare schlecht abdrucken lassen, ist
hier auf die Abbildung der Html-Seiten verzichtet worden. Es wird davon ausgegangen, daß der Leser beim Lesen dieses Kapitels gleichzeitig
die Html-Seiten aufruft und die entsprechenden Verweise und Knöpfe
mitverfolgt.
Das online verfügbare kommentierte Vorlesungsverzeichnis besteht aus
drei Java-Servlets, die auf einem Apache-Server laufen. Es ist im Internet mit allen üblichen Browsern abrufbar, da die Servlets Internetseiten generieren, die nur aus Html-Befehlen bestehen. Allerdings werden manche Html-Befehle von einigen Browsern unterschiedlich interpretiert. So ist das Aussehen des kommentierten Vorlesungsverzeichnisses nicht auf allen Browsern identisch. Die Adresse der Startseite
des kommentierten Vorlesungsverzeichnisses ist als Verweis (Link) auf
der Homepage der Informatik (www.cs.tu-bs.de ) angegeben und lautet:
www.iti.cs.tu-bs.de/KommVor/Studenten . Bei dem Wort KommVor bitte auf
Großschreibung achten. Damit wird das Studenten-Servlet gestartet.
Dieses Servlet zeigt die Sicht der Studenten auf das kommentierte Vorlesungsverzeichnis. Fast alle Seiten des kommentierten Vorlesungsverzeichnisses haben oben auf der Seite ein Kopffeld und auf der linken
Seite eine Navigationsleiste mit allen KommVor-spezifischen Verwei7
8
KAPITEL 4. BENUTZUNG DES KOMMVOR
sen. Unten in dieser Navigationsleiste stehen auch die Verweise zu den
beiden anderen Servlets des kommentierten Vorlesungsverzeichnisses.
Das Institute-Servlet beschreibt die Sicht der Institute auf das kommentierte Vorlesungsverzeichnis: www.iti.cs.tu-bs.de/KommVor/Institute .
Hier können also die Lehrveranstaltungen eingegeben und gewartet werden. Das Admin-Servlet dient dem Administrator zum Warten und Aktualisieren des kommentierten Vorlesungsverzeichnisses:
www.iti.cs.tu-bs.de/KommVor/Admin .
4.1
Studenten-Servlet
Bei Aufruf des Studenten-Servlets werden die Titel aller Lehrveranstaltungen des aktuellen Semesters in der Übersicht angezeigt. Sie erreichen diese Übersicht auch immer durch das Anklicken des Verweises
Aktuelles KommVor in der Navigationsleiste. Mit den Verweisen oberhalb
der Übersicht lassen sich innerhalb der ziemlich langen Übersicht die
Teilbereiche der Informatik schnell finden. Vor jeder Lehrveranstaltung
wird eine Checkbox angezeigt. Für jede Lehrveranstaltung, zu der Sie
die Detailinformationen sehen möchten, aktivieren Sie diese Checkboxen. Wenn Sie alle interessanten Lehrveranstaltungen ausgewählt haben, klicken Sie auf einen der ganz oben oder ganz unten auf der Seite
zu findenden Ausgewählte Lehrveranstaltungen anzeigen -Knöpfe. Dadurch wird eine Seite angezeigt, die zu allen ausgewählten Lehrveranstaltungen die bereitgestellten Informationen enthält. Diese Seite hat
keine Kopf- und Navigationsleisten, damit sie sich in jedem Browser gut
speichern und ausdrucken läßt. Zurück zur Übersicht kommen Sie hier
mit dem Zurück - oder Back -Knopf des Browsers. Bei manchen Browsern müssen Sie danach noch auf den neu laden -, Aktualiseren - oder
Reload -Knopf klicken. Das liegt daran, daß diese Browser Formulare
nicht zwischenspeichern.
Wenn Sie sich alte kommentierte Vorlesungsverzeichnisse bzw. evtl.
schon eingegebene Daten des nächsten Semesters anschauen möchten,
so können Sie dieses Semester mit den Auswahlfenstern in der Navigationsleiste einstellen und auf den dazugehörigen Go -Knopf klicken.
In der Navigationsleiste befindet sich darunter ein Feld, in das Sie
4.1. STUDENTEN-SERVLET
9
ein Wort eingeben können. Durch Anklicken des dazugehörigen Go Knopfes können Sie dieses Wort im kommentierten Vorlesungsverzeichnis suchen lassen. Logisch verknüpfte Suchbegriffe unterstützt dieses
Programm nicht. Sie können jedoch auch Suchbegriffe eingeben, die
länger als ein Wort sind. Das Leerzeichen wird dann wie ein normaler Buchstabe behandelt. Der Suchbegriff wird in allen Feldern der
Datenbank gesucht. Dabei ist die Groß / Kleinschreibung irrelevant
und der Begriff kann auch nur Teil eines Wortes sein. Werden eine
oder mehrere Lehrveranstaltungen des aktuellen Semesters gefunden,
die in einem beliebigen Feld den gesuchten Begriff enthalten, so werden deren Titel analog zur Übersicht mit vorangestellter Checkbox
angezeigt. Dann suchen Sie sich eine oder mehrere Lehrveranstaltungen durch Aktivieren der Checkboxen aus und lassen sie sich mit dem
Ausgewählte Lehrveranstaltungen anzeigen -Knopf anzeigen.
Möchten Sie den Begriff in allen Semestern (also der gesamten Datenbank) suchen, so lassen Sie den Begriff erst normal suchen und klicken
dann unten auf der Seite auf den In allen Semestern suchen -Knopf.
Die Titel derLehrveranstaltungen werden dann sortiert nach Semestern
und innerhalb der Semester absteigend sortiert nach Instituten angezeigt.
Manche Browser können auch ein Lesezeichen auf das kommentierte Vorlesungsverzeichnis mit übergebenem Suchbegriff speichern. Zum
Beispiel findet der Aufruf von
http://www.iti.cs.tu-bs.de/KommVor/Studenten?Such1=prog
alle Lehrveranstaltungen des aktuellen Semesters, die den Begriff prog
enthalten. Dabei ist die Groß / Kleinschreibung irrelevant und der
Begriff kann auch nur Teil eines Wortes sein. Es wird also auch z.B.
Programmieren gefunden. Um in allen Semestern zu suchen geben Sie
folgendes ein:
http://www.iti.cs.tu-bs.de/KommVor/Studenten?Such1=prog&Suchen2=x .
Genauso kann man auch die Übersicht für ein bestimmtes Semester
anfordern bzw. als Lesezeichen speichern:
http://www.iti.cs.tu-bs.de/KommVor/Studenten?Jahr=2000&Saison=WS .
10
4.2
KAPITEL 4. BENUTZUNG DES KOMMVOR
Institute-Servlet
Im ersten Teil dieses Abschnittes werden alle Formulare des InstituteServlets erklärt. Im zweiten Teil finden Sie Aufgabenstellungen, die
sich für Sie ergeben können, und deren Lösungen in Form einer FAQ
(frequently asked questions).
4.2.1
Die Formulare
Wenn Sie das Institute-Servlet aufrufen, so erhalten Sie als erstes das
Login-Formular. Falls Sie mal Ihre ID/Passwort-Kombination nicht
mehr wissen, so können Sie sich diese zumailen lassen. Dazu klicken
Sie auf den Identifikation zumailen lassen -Knopf. Danach suchen Sie
Ihr Institut aus und klicken auf den Mail senden -Knopf vor dem
Namen Ihres Instituts. Es wird dann eine Mail an die in der Datenbank eingetragenen berechtigten Personen Ihres Instituts gesendet.
Achtung: Ihr Institut kann zweimal in der Liste vorhanden sein, einmal für Hauptstudium-Lehrveranstaltungen und einmal für NebenfachLehrveranstaltungen.
Zum Benutzen des Institute-Servlets benötigen Sie eine User-ID und
ein Passwort. Dies ist erforderlich, da die Institute die Datenbank nur
für Lehrveranstaltungen ihres Instituts ändern können sollen. Bitte
geben Sie diese ID/Passwort-Kombination in die Felder des LoginFormulars ein und bestätigen Sie sie mit dem Login -Knopf. Wenn
die ID/Passwort-Kombination stimmt, wird ein Menu angezeigt, das
automatisch die Ihrem Institut entsprechenden Daten für das aktuelle
Semester enthält.
Oben auf der Seite wird Ihnen die Möglichkeit gegeben, das Passwort
Ihres Instituts zu ändern. Dazu geben Sie das alte Passwort und zweimal das neue Passwort ein und klicken auf Passwort ändern . Wenn
das neue Passwort akzeptiert und in die Datenbank eingetragen wurde, so wird automatisch eine Mail an alle berechtigten Personen Ihres
Instituts erzeugt, welche über die Änderung des Passwortes informiert.
Im Bereich darunter werden Ihnen für das Eingabe-Semester alle bereits
eingegebenen Lehrveranstaltungen angezeigt. Das Eingabe-Semester
4.2. INSTITUTE-SERVLET
11
wird vom Administrator des kommentierten Vorlesungsverzeichnisses
bestimmt. Es ist im Normalfall im Wintersemester das folgende Sommersemester und im Sommersemester das folgende Wintersemester.
Hat Ihr Institut noch keine Lehrveranstaltungen eingetragen, so ist
dieser Bereich leer. Möchten Sie eine der eingegebenen Lehrveranstaltungen ändern oder löschen, so klicken Sie auf den Ändern -Knopf. Sie
gelangen dann in das Eingabeformular, welches weiter unten erklärt
wird.
Darunter befindet sich der Knopf Neu . Benutzen Sie ihn bitte, wenn
Sie eine Lehrveranstaltung eingeben möchten, die noch nie in das kommentierte Vorlesungsverzeichniseingetragen wurde. Auch hier gelangen
Sie in das Eingabeformular.
Wenn Sie eine Lehrveranstaltung eingeben möchten, die bereits in einem vorhergehenden Semester in das kommentierte Vorlesungsverzeichniseingetragen wurde (gleich von welchem Institut), so stellen Sie bitte
im Menu ganz unten auf der Seite mit den Auswahlfenstern das Semester ein, in dem die gewünschte Lehrveranstaltung gehalten wurde, und
klicken Sie auf Übernahme einer Lehrveranstaltung dieses Semesters .
Sie können dann in der Übersicht der Lehrveranstaltungen dieses Semesters die gewünschte Lehrveranstaltung auswählen, indem Sie auf
den Übernehmen -Knopf klicken. Die Daten werden nicht geändert,
sondern Sie legen mit dieser Aktion eine zweite Lehrveranstaltung an.
Einige Daten der Lehrveranstaltung werden dabei automatisch aktualisiert. So wird das aktuelle Semester und die Zugehörigkeit zu Ihrem
Institut eingesetzt. Die restlichen Daten werden im Eingabeformular
angezeigt und können von Ihnen geändert oder einfach übernommen
werden.
Eingabeformular
Im Eingabeformular geben Sie die Daten der Lehrveranstaltungen ein
bzw. ändern diese Daten. Geben Sie alle gewünschten Daten ein. Sie
können die meisten Felder auch leer lassen. Sie erscheinen dann nicht
in der Anzeige für die Studenten. Falls Sie die Eingabe abbrechen wollen, ohne daß die Datenbank verändert wird, so klicken Sie bitte auf
12
KAPITEL 4. BENUTZUNG DES KOMMVOR
den Abbrechen und zurück zur Übersicht -Knopf. Sie gelangen dann
wieder in das Hauptmenu des Instituteservlets. Nachdem Sie alle Daten eingegeben haben, klicken Sie auf den Ausführen -Knopf. Dadurch
werden die Daten auf Integrität geprüft und bei Erfolg sofort in die Datenbank geschrieben. Sie sind nun sofort aus der Sicht der Studenten
zu sehen.
Wenn Sie prüfen wollen, ob Ihre Daten aus der Studentensicht in Ordnung sind, so wählen Sie in der Navigationsleiste auf der linken Seite
das Semester und klicken Sie auf den Go -Knopf. Wenn das aktuelle Semester mit dem Semester, für das Sie die Daten eingeben, übereinstimmt, dann können Sie selbstverständlich auch auf den Verweis
Aktuelles Semester klicken. Suchen Sie dort in der Übersicht Ihre Lehrveranstaltung und aktivieren Sie die davorstehende Checkbox. Mit dem
Ausgewählte Lehrveranstaltungen anzeigen -Knopf können Sie nun die
Daten Ihrer Lehrveranstaltung einsehen. Mit zweimaligem Betätigen
des Zurück - oder Back -Knopfes Ihres Browsers (bei Netscape danach
noch Neu Laden , Aktualisieren oder Reload ) kommen Sie zurück
ins Instituteservlet, ohne daß Sie sich neu identifizieren müssen.
Wenn Sie die Lehrveranstaltung, die Sie gerade bearbeiten, löschen
möchten, dann klicken Sie auf den
Diese Lehrveranstaltung aus der Datenbank löschen -Knopf. Sie werden dann nochmal gefragt, ob Sie die Lehrveranstaltung tatsächlich
komplett löschen wollen. Falls Sie auch dies bestätigen, so wird die
Lehrveranstaltung aus der Datenbank gelöscht.
Es folgt die Beschreibung der einzelnen Felder. Die Zahl in Klammern
bedeutet dabei immer die maximale Länge des Eingabetextes.
Name der Lehrveranstaltung (max. 100 Zeichen) der Name der
Lehrveranstaltung
Typ der Lehrveranstaltung (50) z. B.: Vorlesung + Übung, oder:
Praktikum
Diese Lehrveranstaltung ist für (vorgegeben) Hier klicken Sie auf
das Auswahlfeld. Manchmal werden hier nur zwei oder eine
Möglichkeit angeboten. Mögliche Angaben sind hier: Informatik
4.2. INSTITUTE-SERVLET
13
Grundstudium, Informatik Hauptstudium, Informatik Nebenfach
oder Nicht-Informatiker.
Dozent(in) (50) Der Name des Dozenten / der Dozentin.
Dozent(in)-Email (50) Die Email-Adresse des Dozenten / der Dozentin.
Dozent(in)-Telefon (30) Die Telefonnummer des Dozenten / der Dozentin.
Dozent(in)-Sprechzeit (50) Die Sprechzeit des Dozenten / der Dozentin.
Assistent(in) (50) Der Name des Assistenten / der Assistentin bzw.
Übungsleiter(in).
Assistent(in)-Email (50) Die Email-Adresse des Assistenten / der
Assistentin bzw. Übungsleiter(in).
Assistent(in)-Telefon (30) Die Telefonnummer des Assistenten / der
Assistentin bzw. Übungsleiter(in).
Assistent(in)-Sprechzeit (50) Die Sprechzeit des Assistenten / der
Assistentin bzw. Übungsleiter(in).
Zeit und Ort der Lehrveranstaltung (beliebig) z.B.: Mo., 11.30 13.00, Mi., 8.00 - 9.30 (jeweils SN 19.2)
Datum der ersten Veranstaltung (20) z.B.: Mo., 16.10.2000
LVA-Dauer (z.B.:4+2) (10) Bitte geben Sie hier unbedingt die Zahl
der VL-Stunden und der Übungsstunden an. Dieser Wert wird
auch in der vorzeitig veröffentlichten tabellarischen Übersicht verwendet. Deswegen halten Sie bitte auch das Format ein. Z.B.: 4+2
Semester (15) Auch hier klicken Sie bitte auf das Auswahlfeld und
wählen einen der vorgegebenen Werte. Mögliche Angaben sind:
1. Semester, 2. Semester, 3. Semester, 4. Semester oder Hauptstudium.
14
KAPITEL 4. BENUTZUNG DES KOMMVOR
empfohlenes Semester (20) Dieses Feld sollte nur belegt werden,
wenn die Studenten einen Vorteil dadurch haben, wenn sie die
Lehrveranstaltung in einem bestimmten Semester hören.
Scheinerwerb (50) Führen Sie hier bitte die Bedingungen auf, unter
denen man einen Schein bekommt, falls welche vergeben werden.
Hörerkreis (beliebig) Bitte geben Sie hier die Zielgruppe der Lehrveranstaltung ein
Voraussetzungen (beliebig) Falls die Studenten das Wissen aus einer
anderen Lehrveranstaltung oder Scheine zum Hören dieser Lehrveranstaltung benötigen, geben Sie diese Voraussetzungen bitte
hier ein.
Inhalt (beliebig) Bitte geben Sie in diesem Feld unbedingt zumindest
kurz an, welchen Inhalt die Lehrveranstaltung hat. Nach den Angaben in diesem Feld orientieren sich manche Studenten bei der
Vertiefungsfachwahl.
Bemerkungen (beliebig) Dieses Feld steht zur freien Verfügung.
Literatur (beliebig) Falls Sie Ihren Studenten die Möglichkeit geben
wollen bereits vor der ersten Vorlesung die Bücher in der UB zu
reservieren.
Sonstiges (beliebig) Dieses Feld steht zur freien Verfügung.
Link zur Online-Beschreibung der Lehrveranstaltung (80)
Falls Sie die Lehrveranstaltungbereits auf der Homepage Ihres
Instituts zeigen, können Sie hier den Link dorthin eintragen.
leeres Feld (30) Hier können Sie ein Feld anlegen, dessen Namen Sie
selbst eingeben können.
leer (beliebig)
leer (30) Ein zweites frei definierbares Feld.
leer (beliebig)
4.2. INSTITUTE-SERVLET
4.2.2
15
FAQ
Frage: Was macht man, wenn man das Passwort vergessen
hat?
Antwort: Rufen Sie das Institute-Servlet auf und klicken Sie auf
Identifikation zumailen lassen . Suchen Sie Ihr Institut aus und klicken
Sie auf den Mail senden -Knopf vor Ihrem Institut. Es wird dann eine Mail an die in der Datenbank eingetragenen berechtigten Personen
Ihres Instituts gesendet. Achtung: Ihr Institut kann zweimal in der Liste vorhanden sein, einmal für Hauptstudium-Lehrveranstaltungen und
einmal für Nebenfach-Lehrveranstaltungen.
Frage: Wie gibt man eine ganz neue Lehrveranstaltung ein?
Antwort: Klicken Sie nach dem Login im Menu auf den Neu -Knopf.
Geben Sie die Daten ein und klicken Sie auf den Ausführen -Knopf.
Frage: Wo sieht man, daß die eingegebenen Daten der Lehrveranstaltung korrekt wiedergegeben werden?
Antwort: Wählen Sie in der Navigationsleiste mit den Auswahlfenstern das Semester aus und klicken sie auf Go . Suchen Sie die Lehrveranstaltung in der Übersicht, aktivieren Sie
die Checkbox und klicken Sie ganz oben oder ganz unten auf
Ausgewählte Lehrveranstaltungen anzeigen .
Frage: Wie kommt man von der Ansicht der Lehrveranstaltungen zurück ins Institute-Servlet?
Antwort: Wenn Sie vorher schon im Instituteservlet eingeloggt waren,
können Sie mehrfach den Zurück - oder Back -Knopf Ihres Browsers
benutzen. Dies ist nur bei formularspeichernden (Internet Explorer)
Browsern wirklich sinnvoll, da Sie sonst noch im richtigen Moment die
Seite neu laden müssen. Sie können sich auch neu einloggen.
Frage: Wie korrigiert / ändert man Lehrveranstaltungen?
Antwort: Klicken Sie im Menu auf den Ändern -Knopf vor der betreffenden Lehrveranstaltung. Ändern Sie die Daten und klicken Sie
auf Ausführen .
Frage: Wie löscht man Lehrveranstaltungen?
Antwort: Klicken Sie im Menu auf den Ändern -Knopf vor der betreffenden Lehrveranstaltung. Klicken Sie nun ganz unten auf der Seite
16
KAPITEL 4. BENUTZUNG DES KOMMVOR
auf
Diese Lehrveranstaltung aus der Datenbank löschen .
Sie müssen das Löschen dann nochmal bestätigen.
Frage: Wie kann man die Daten eigener oder fremder Lehrveranstaltungen kopieren bzw. übernehmen?
Antwort: Wählen Sie im Menu ganz unten auf der Seite mit den Auswahlfenstern das Semester, in dem die gewünschte Lehrveranstaltung
gehalten wurde, und klicken Sie auf
Übernahme einer Lehrveranstaltung dieses Semesters .
Sie können dann die Lehrveranstaltung auswählen, indem Sie auf
Übernehmen klicken. Die Daten werden nicht geändert, sondern Sie
legen mit dieser Aktion eine zweite Lehrveranstaltung an. Einige Daten der Lehrveranstaltung werden dabei automatisch aktualisiert. So
wird das aktuelle Semester und die Zugehörigkeit zu Ihrem Institut
eingesetzt.
Frage: Wie trägt man Lehrveranstaltungen für das Grundstudium ein?
Antwort: Sie können solche Lehrveranstaltungen nur eintragen, wenn
Sie die Berechtigung dazu besitzen. Wählen Sie bei der Eingabe der
Lehrveranstaltung im Feld Diese Lehrveranstaltung ist für den
Wert Informatik Grundstudium aus. Wählen Sie im Feld Semester einen der Werte: 1. Semester , 2. Semester , 3. Semester oder
4. Semester . Ansonsten geben Sie die Daten normal ein.
Frage: Wie trägt man Lehrveranstaltungen für das Hauptstudium ein?
Antwort: Sie können solche Lehrveranstaltungen nur eintragen, wenn
Sie die Berechtigung dazu besitzen. Wählen Sie bei der Eingabe der
Lehrveranstaltung im Feld Diese Lehrveranstaltung ist für den
Wert Informatik Hauptstudium aus. Wählen Sie im Feld Semester
den Wert Hauptstudium aus. Ansonsten geben Sie die Daten normal
ein.
Frage: Wie trägt man Lehrveranstaltungen als Nebenfach ein?
Antwort: Sie können solche Lehrveranstaltungen nur eintragen, wenn
Sie die Berechtigung dazu besitzen. Wählen Sie bei der Eingabe der
4.2. INSTITUTE-SERVLET
17
Lehrveranstaltung im Feld Diese Lehrveranstaltung ist für den
Wert Informatik Nebenfach aus. Im Feld Semester können Sie ein
beliebiges Semester eintragen. Ansonsten geben Sie die Daten normal
ein.
Frage: Wie trägt man Lehrveranstaltungen für NichtInformatiker ein?
Antwort: Sie können solche Lehrveranstaltungen nur eintragen, wenn
Sie die Berechtigung dazu besitzen. Wählen Sie bei der Eingabe der
Lehrveranstaltung im Feld Diese Lehrveranstaltung ist für den
Wert Nicht-Informatiker aus. Im Feld Semester können Sie ein beliebiges Semester eintragen. Ansonsten geben Sie die Daten normal ein.
Frage: Wie ändert man Lehrveranstaltungen vergangener Semester?
Antwort: Sie können keine Lehrveranstaltungen vergangener Semester
ändern. Welches Semester gerade für die Eingabe aktuell ist, wird vom
Administrator festgelegt. Selbstverständlich kann der Administrator alle Lehrveranstaltungen ändern. Bei Fragen schicken Sie eine E-Mail
an den Administrator des kommentierten Vorlesungsverzeichnisses. Sie
finden die Adresse des Administrators in der Navigationsleiste unter
E-Mail: Verwalter .
Frage: Was macht man, wenn ein Fehler aufgetreten ist?
Antwort: Bitte schicken Sie eine E-Mail an den Administrator des
kommentierten Vorlesungsverzeichnisses. Sie finden die Adresse des Administrators in der Navigationsleiste unter E-Mail: Verwalter .
18
KAPITEL 4. BENUTZUNG DES KOMMVOR
4.3
Admin-Servlet
Auch hier werden im ersten Teil dieses Abschnittes alle Formulare des
Admin-Servlets erklärt. Im zweiten Teil finden Sie wieder Aufgabenstellungen, die sich für den Administrator ergeben können und deren
Lösungen in Form einer FAQ (frequently asked questions).
4.3.1
Die Formulare
Nachdem
Sie
das
Admin-Servlet
unter www.iti.cs.tu-bs.de/KommVor/Admin aufgerufen haben, müssen Sie
sich mit dem Administrator-ID und Passwort authentifizieren. Danach
gelangen Sie in das Hauptmenu des Admin-Servlets. Hier stehen Ihnen
folgende Optionen zur Verfügung:
• Eine LVA editieren
• Eine LVA-Vorschau erstellen
• Eigenschaften des KommVor ändern
• Ein neues Institut anlegen
• Daten eines Instituts ändern
• Mail-Menu
• DB mit SQL-Monitor bearbeiten
Eine LVA editieren
Wählen Sie erst das entsprechende Semester und betätigen Sie den betreffenden Knopf. Sie gelangen dann in das Studenten-Servlet, wo Sie
die zu ändernde Lehrveranstaltung mit dem Edit -Knopf auswählen.
Sie werden ins Institute-Servlet weitergeleitet und sehen dort die
gewählte Lehrveranstaltung im Eingabeformular. Sie können nun die
Änderungen vornehmen und mit Ausführen in die Datenbank schreiben. Danach sind Sie automatisch wieder im Hauptmenu des AdminServlets.
4.3. ADMIN-SERVLET
19
Eine LVA-Vorschau erstellen
Wählen Sie erst das entsprechende Semester und betätigen Sie den
betreffenden Knopf. Es wird dann eine Html-Seite angezeigt, die eine Kurzübersicht mit allen eingetragenen Lehrveranstaltungen enthält.
Diese Html-Seite enthält kein Kopffeld, keine Navigationsleiste und
auch keine Menuknöpfe, damit sie sich so speichern und ausdrucken
läßt, daß sie auch in Aushängen verwendet werden kann oder sich
als Htmlseite in Webpages einbinden läßt. Deswegen gibt es hier
auch keinen Knopf, der zurück ins Hauptmenu führt. Sie müssen also den Back - oder Zurück -Knopf Ihres Browsers benutzen. Falls
der Browser keine Seiten zwischenspeichert, so müssen Sie noch
Aktualisieren/Neu laden bzw. Reload betätigen.
Eigenschaften des KommVor ändern
Alle Eigenschaften des kommentierten Vorlesungsverzeichnisses sind
in der Datenbank in der einzeiligen Tabelle MetaDaten gespeichert. Wenn Sie die Eigenschaften ändern wollen, dann ändern
sie diese Tabelle. Nachdem Sie im Hauptmenu den Knopf
Eigenschaften des KommVor ändern angeklickt haben, zeigt das folgende Formular alle Felder dieser Tabelle mit ihren aktuellen Werten
an. Sie können diese Werte ändern. Achten Sie dabei aber darauf, daß
die Werte konsistent zueinander bleiben. Es folgt die Beschreibung der
einzelnen Felder. Die Zahl in Klammern bedeutet dabei immer die maximale Länge des Eingabetextes.
InstitutsServlet Login Wenn der Eintrag offen gewählt ist, ist alles
normal, ist gesperrt gewählt, so können die Institute sich derzeit
nicht im Institute-Servlet anmelden, es ist also kein Zugriff auf
ihre Daten möglich.
Startjahr der DB Das älteste Jahr des Online-KommVor, welches
man sich anzeigen lassen kann. Dieser Wert sollte irgendwann
(z.B. ab 2020) erhöht werden, um die Auswahlfenster nicht zu
lang werden zu lassen. D.h., der Wert sollte nicht um mehr als 20
Jahre vom Endjahr differieren.
20
KAPITEL 4. BENUTZUNG DES KOMMVOR
Endjahr der DB Dieses Jahr entspricht dem aktuellsten, anzeigbaren Jahr des Online-KommVor und sollte im Regelfall gleich mit
Aktuellesjahr sein. Der Wert darf nicht kleiner als der Wert des
Startjahres sein.
Aktuelles Jahr für Eintragungen der Institute Dieses Jahr (Semester) bestimmt, für welches Semester die Institute Eintragungen machen können.
Aktuelle Saison für Eintragungen der Institute SS / WS
Aktuelles Jahr für die Ausgabe für die Studenten Dieses Jahr
(Semester) bestimmt, welches Semester in der Navigationsleiste
und beim ersten Aufruf des kommentierten Vorlesungsverzeichnisses als aktuelles Semester gilt.
Aktuelle Saison für die Ausgabe für die Studenten SS
WS
oder
LetzteVLNummer Dieser Wert wird intern zum Sortieren verwendet
und sollte daher nur vom Programmierer zum Testen verändert
werden.
Admin Username (8)
Sie können hier Ihren eigenen Administratoren-Benutzernamen
ändern.
Admin Passwort (8) Sie können hier Ihr eigenes AdministratorenPasswort ändern.
Admin Email (beliebig) Falls Fehler im kommentierten Vorlesungsverzeichnis bezüglich der Eingabe von Lehrveranstaltungen auftreten, die das Programm bemerkt, so wird an diese Adresse eine
Mail versendet. Ebenso erscheint diese Mail-Adresse als Adresse
des Verwalters des kommentierten Vorlesungsverzeichnisses in der
Navigationsleiste.
Admin Reply-Email (80) Falls das KommVor-Programm automatische Mails versendet, so wird diese Adresse im FROM-Feld der
Mail eingetragen.
4.3. ADMIN-SERVLET
21
Autor Email (80) Falls Fehler im kommentierte Vorlesungsverzeichnisbezüglich der Programmierung auftreten, die das Programm
bemerkt, so wird an diese Adresse eine Mail versendet. Ebenso
erscheint diese Mail-Adresse als Adresse des Autors des KVs in
der Navigationsleiste.
TitelRundschreiben1-7 (50) Sie können hier den Rundschreiben aus
dem Mail-Menu Titel geben, die dort angezeigt werden.
Wenn Sie die Werte aktualisiert haben, schreiben Sie sie mit
Ausführen in die Datenbank.
Ein neues Institut anlegen
Daten eines Instituts ändern
In diesen beiden Menupunkten haben Sie die Möglichkeit, die Daten
der Institute zu verändern.
Die Felder :
[Name des Instituts] Der eigene Name des Instituts.
[Fachname] Der Name des entsprechenden Prüfungsfaches aus
der Prüfungsordnung.
[Kürzel des Instituts] Dieses Kürzel muß nicht dem gebräuchlichem Kürzel des Instituts entsprechen, sollte aber. Es sollte unbedingt 4 Zeichen lang sein, deswegen bitte den vierten bzw. dritten und vierten Buchstaben mit 1 auffüllen, bzw. bei mehreren
Abteilungen innerhalb eines Institutes diese per Nummer unterscheiden.
[Sortiernummer des Instituts] Diese Nummer ist zum richtigen Sortieren der Lehrveranstaltungen wichtig. Deswegen bitte
folgende Konventionen beachten:
200-299: Theoretische Informatik
300-399: Praktische Informatik
400-499: Technische Informatik
500-599: Mathematik-Lehrveranstaltungen als Pflichtfach
22
KAPITEL 4. BENUTZUNG DES KOMMVOR
600-899: Nebenfächer (auch Mathematik)
Diese Nummer sollte, nachdem das Institut Lehrveranstaltungen
eingetragen hat, niemals wieder geändert werden.
[Link zur Homepage des Inst.] Wird derzeit nicht verwendet.
[Email des Administrators des Inst.] An diese Adresse werden
Mails des kommentierten Vorlesungsverzeichnisses automatisch
durch den Administrator verschickt. Hier können auch mehrere Email-Adressen der Mitarbeiter des Instituts durch Kommas
getrennt eingetragen werden.
[Email für Beschwerden (Professor)] Wird derzeit nicht verwendet.
[Username] Der Benutzername des Instituts (derzeit unverschlüsselt).
[Passwort] Das Passwort des Instituts (derzeit unverschlüsselt).
[Login] Normalerweise offen . Wenn Sie hier gesperrt setzen,
dann kann sich dieses Institut nicht im Institute-Servlet anmelden
und so keine Daten ändern.
[Eintragung von LVA für das Grundstudium sind]
[Eintragung von LVA für das Hauptstudium sind]
[Eintragung von LVA als Nebenfach sind]
[Eintragung von LVA für Nicht-Informatiker sind] erlaubt
oder nicht erlaubt . Diese Eintragung bestimmt, welche Arten
von Lehrveranstaltungen dieses Institut eintragen darf.
Wenn Sie die Werte eingegeben haben, schreiben Sie sie mit Ausführen
in die Datenbank. Wenn Sie die Daten eines Instituts ändern, dann gibt
es in dem Formular auch die Möglichkeit dieses Institut zu löschen.
Wählen Sie diese Option bitte mit Bedacht aus, da nach dem Löschen
eines Instituts, die Lehrveranstaltungen dieses Instituts auch bei dem
Aufruf eines alten KommVors nicht mehr angezeigt werden. Es ist für
die nächste Überarbeitung des kommentierten Vorlesungsverzeichnisses
ein anderes System vorgesehen. Sie können hier derzeit ein Institut mit
oder ohne den Lehrveranstaltungen dieses Instituts löschen.
4.3. ADMIN-SERVLET
23
Mail-Menu
Dieses Menu dient dazu, daß Sie den Instituten zu bestimmten Anlässen
vorgefertigte Emails schicken können. Sie wählen als erstes, welches
Rundschreiben Sie bearbeiten und / oder verschicken möchten. Dieses Rundschreiben wird Ihnen dann angezeigt. Jedes Rundschreiben
besteht aus drei Teilen. Zwei beliebig lange Textteile und ein vom
Programm erzeugten Zwischenteil, der das Institut über seine aktuelle Benutzeridentifikation informiert. Sie können den Text ändern.
Wenn Sie den Text nur für diese Mail ändern wollen, so versenden
Sie die Mail nach der Änderung einfach. Der geänderte Text wird dann
nicht gespeichert. Wenn Sie den Text jedoch für zukünftige Benutzungen ändern wollen, so aktivieren Sie unten im Formular die Checkbox Änderungen am Text permanent speichern und klicken dann auf
einen der weiterführenden Knöpfe. Bitte klicken Sie in diesem Fall nicht
auf zurück zum Hauptmenu .
Sie können mit an alle Institute eine Email an alle im kommentierten
Vorlesungsverzeichnis vorhandenen Institute senden. Mit dem Knopf
Institute selektieren können Sie erst auswählen, an welche im
kommentierten Vorlesungsverzeichnis vorhandenen Institute die Email
versendet wird. Und mit dem Knopf
an alle Institute, die keine Einträge vorgenommen haben können Sie
eine Email an diejenigen Institute senden, die noch keine Lehrveranstaltungen für das aktuelle Semester eingegeben haben.
Bei allen Optionen werden Sie, bevor die Email tatsächlich versendet
wird, nochmal gefragt, ob Sie die Email tatsächlich versenden wollen.
DB mit SQL-Monitor bearbeiten
In diesem Menu haben Sie die Möglichkeit, die Datenbank völlig frei von
Restriktionen durch Konsistenzprüfungen der KommVor-Servlets zu
manipulieren. Sie können mit dem Monitor auf alle Felder aller Tabellen
des kommentierten Vorlesungsverzeichnisses sowohl lesend, löschend als
auch schreibend zugreifen. Sie können entweder ein komplettes SQLKommando im ersten Formular (hier Alternative genannt) eingeben
und ausführen lassen. Grundsätzlich wird Ihnen das Kommando vom
24
KAPITEL 4. BENUTZUNG DES KOMMVOR
Monitor nochmal gezeigt, bevor Sie es ausführen. Im zweiten Formular
können Sie das SQL-Kommando per Menus zusammenstellen. In den
Menus werden Ihnen jeweils nur sinnvolle Optionen zur Auswahl angeboten. Im dritten Formular stellen Sie das SQL-Kommando in einem
Formular zusammen.
Mit dem Monitor lassen sich z.B. verlorengegangene Lehrveranstaltungen suchen und wieder zu einem Institut zuordnen. Oder falls sich z.B.
das Institutskürzel ändern soll, so kann man hier leicht alle Datensätze
gleichzeitig manipulieren und so auch diese Aufgabe erledigen.
4.3.2
FAQ
Frage: Welche Aufgaben sind am Anfang eines neuen Semesters zu erledigen?
Antwort: In den Eigenschaften des kommentierten Vorlesungsverzeichnisses müssen die Jahreszahlen und Semester aktualisiert werden.
Danach müssen die entsprechenden Emails an die Institute versendet
werden.
Frage: Wo steht das Administratoren-ID/Passwort?
Antwort: Wenn Sie sich anmelden können, so können Sie sich unter
Eigenschaften des kommentierten Vorlesungsverzeichnisses ändern
ID und Passwort anzeigen lassen und sie dort verändern. Ansonsten
bleibt nur der Weg direkt über die MySQL-Datenbank. Dort steht die
Identifikation in der Datenbank KommVor in der Tabelle MetaDaten
unter SuperUsername und SuperPasswort.
Frage: Ein Institut fragt nach seinem ID / Passwort.
Antwort: Sie können das Passwort unter
Daten eines Instituts ändern lesen und ändern oder es direkt im MailMenu an dieses Institut senden.
Frage: Wie wird die ID / das Passwort eines Instituts
geändert?
Antwort: Sie können das Passwort unter
Daten eines Instituts ändern lesen und ändern oder es direkt im MailMenu an dieses Institut senden.
Frage: Ein neues Institut soll angelegt werden.
4.3. ADMIN-SERVLET
25
Antwort: Derzeit muß nur der Menupunkt ein neues Inst. anlegen
aufgerufen und die Daten dort eingetragen werden
Frage: Ein Institut soll gelöscht werden.
Antwort: Denken Sie daran, daß die Lehrveranstaltungen dieses Instituts vielleicht noch zum Übernehmen durch andere Institute gebraucht
werden. Deswegen soll in der nächsten Version des kommentierten Vorlesungsverzeichnisses eine verbesserte Speicherung von geschlossenen
Instituten verwirklicht werden. Ansonsten geht das Löschen über den
Menupunkt Daten eines Instituts ändern und dort mit dem Knopf
Dieses Institut aus der Datenbank löschen .
Frage: Ein KommVor-berechtigter Mitarbeiter verläßt ein Institut.
Antwort: Die Administratoren-Email-Adresse dieses Institut muß
geändert werden. Danach muß das Passwort neu gesetzt werden und
dem Institut eine Email mit der neuen Identifikation zugesendet werden.
Frage: Ein Institut hat einen neuen KommVor-berechtigten
Mitarbeiter.
Antwort: Auch hier bitte die Email ändern und die Identifikation zur
Sicherheit noch einmal zusenden.
Frage: Wie kann man eine Lehrveranstaltung zwischen zwei
Instituten verschieben, z.B. zwischen dem Institut zu seinem
Nebenfachinstitut?
Antwort: Als Ziel-Institut einloggen und die Lehrveranstaltung übernehmen. Falls die Lehrveranstaltung gar nicht mehr zu sehen ist, muß
man mit dem SQL-Monitor die Sortiernummer und das Institutskürzel
ändern. Trotzdem sollte man danach diese Lehrveranstaltung nochmal
übernehmen, damit die interne Suchnummer automatisch aktualisiert
wird.
Frage: Wie kann man ein Backup der DB anlegen?
Antwort: Der DV-Administrator kann die Datenbank kopieren. Die
Datenbank wird derzeit automatisch mit gesichert, wenn ein Institutsbackup läuft.
Frage: Was macht man, wenn ein schwerer Fehler aufgetreten
ist?
26
KAPITEL 4. BENUTZUNG DES KOMMVOR
Antwort: Evtl. kann man den Fehler beheben, indem man den Server (Apache) neu startet und somit die Servlets neu gestartet werden.
Ansonsten hilft vielleicht eine Email an den Autor?
Kapitel 5
Implementierung des
KommVor
Die Dokumentaion der einzelnen Servlets ist auf der beiliegenden CD in
Form von Html-Seiten im Java-Documentation-Format zu finden. Die
Dateien heißen Studenten.html, Institute.hmtl und Admin.html.
5.1
Die Dateien
Als erstes werden alle Dateien, die das kommentierte Vorlesungsverzeichnis darstellen, aufgeführt und erklärt. Die drei wichtigsten Dateien
sind die drei Servlets: Studenten.java, Institute.java und Admin.java.
Diese Dateien existieren in zwei Versionen. Die normalen Versionen bilden das Realsystem, welches das tatsächliche KommVor darstellt. Die
Dateien StudentenTS.java, InstituteTS.java und AdminTS.java bilden
das Testsystem. Sie werden nur zum Testen von neuen Versionen des
kommentierten Vorlesungsverzeichnisses gebraucht. Dabei greifen Sie
auf eine gesonderte Datenbank KommVorTS zu, so daß beim Testen
keine wichtigen Daten verlorengehen können. Änderungen am kommentierten Vorlesungsverzeichnis werden also nur an diesen Dateien
vorgenommen. Diese werden dann getestet. Nach erfolgreichem Test
werden dann diese Dateien umgewandelt und über die Realsystemdateien kopiert.
27
28
KAPITEL 5. IMPLEMENTIERUNG DES KOMMVOR
Bevor man die Dateien umwandelt, sollte man die vorgenommenen
Änderungen im Kopf der Datei dokumentieren. Um ein Servlet vom
Testsystem ins Realsystem zu übernehmen muß man erst die Dateien
kopieren. Z.B.: cp StudentenTS.java Studenten.java
Dann muss der Klassenname angepaßt werden: StudentenTS wird zu:
Studenten
Dann müssen die folgenden Konstanten umkommentiert werden, so daß
die Konstanten des Realsystems unkommentiert sind und die des Testsystems kommentiert sind:
/* RealSystem */
protected static final String StudentenServletUrl = ...
...
/* */
/* TestSystem
protected static final String StudentenServletUrl = ...
...
*/
Nun müssen die Servlets nur noch neu kompiliert werden. Die Dateien Studenten.class, Institute.class und Admin.class stellen dann die
lauffähigen Servlets dar. Wenn Sie bereits im Browser ein Servlet
gestartet hatten, dann müssen Sie es nun neu starten, indem Sie es in
der Navigationsleiste einfach anklicken und sich evtl. neu identifizieren.
Weitere Dateien :
[Kopfleiste.html] Wird in fast jeder erzeugten Html-Datei als
erstes eingefügt und beinhaltet die Struktur der Tabelle, aus der
jede erzeugte Html-Seite besteht, und den Inhalt der ersten Zeile
dieser Tabelle, nämlich das Kopffeld mit dem TU-Logo und die
Überschrift.
5.1. DIE DATEIEN
29
[Navigationsleiste.html] Wird auch in fast jeder erzeugten
Html-Datei eingefügt. Sie beinhaltet die linke Spalte in der zweiten (und letzten) Zeile der Haupttabelle. Dadurch wird auf diesen
Seiten links die Navigationsleiste angezeigt.
[NavigationTeil1.html]
[NavigationTeil2.html] Aus diesen beiden Teilen und einem
automatisch erzeugten Zwischenstück wird die Navigationsleiste neu zusammengesetzt, wenn der Administrator das Startjahr oder das Endjahr des kommentierten Vorlesungsverzeichnisses verändert.
[NavigationsleisteTS.html]
[NavigationTeil1TS.html]
[NavigationTeil2TS.html] Das Pendant im Testsystem. Hier
sind nur die Verweise (Links) anders — sie zeigen ins Testsystem.
[Rundschreiben. . . ] Die einzelnen Teile der gespeicherten
Rundschreiben. Sie können auch direkt im Verzeichnis geändert
werden.
[RundschreibenLigHinweise] Diese Datei kann man mit dem
Steuercode ‘$$Hinweise‘ in die Rundschreiben einfügen. Diese Datei kann nur hier im Verzeichnis direkt geändert werden.
[kommvor.properties] steht im Oberverzeichnis und legt einige
Serverseitige Eigenschaften der Servlets fest.
[index.html] Eine Homepage des kommentierten Vorlesungsverzeichnisses, die aber derzeit nicht genutzt wird.
[classpfad, MenuCodes.txt, MySQL.txt, Datensammlung]
Dokumentations- und Hilfsdateien.
[Studenten.html, Institute.hmtl und Admin.html] Die Dokumentaion zu den Servlets.
30
5.2
KAPITEL 5. IMPLEMENTIERUNG DES KOMMVOR
Die Datenbank
Wie schon oben erwähnt, gibt es zwei Datenbanken. Die Datenbank
KommVor ist die tatsächlich benutzte und die Datenbank KommVorTS ist die vom Testsystem benutzte Datenbank. Sie sind von der
Struktur her genau identisch, so daß sie hin- und herkopiert werden
können. So kann man die KommVor-DB zu bestimmten Zeiten über
die KommVorTS-DB kopieren und sich so ein zweites Backup anlegen. Außerdem kann man so die neuen Änderungen im Testsystem an
aktuellen Daten testen.
Die Datenbank besteht aus drei Tabellen. Die Tabelle Metadaten
enthält nur eine Zeile und beschreibt die Eigenschaften des kommentierten Vorlesungsverzeichnisses.
Die Felder der Tabelle MetaDaten wurden in Kapitel 4.3.1 beschrieben, die Tabelle Institute in Kapitel 4.3.1 und die Tabelle Vorlesungen
in Kapitel 4.2.1. Deswegen werden die Felder hier nur mit ihrer SQL
Struktur und ihren Typen aufgeführt. NN bedeutet Not Null und heißt,
daß dieser Wert unbedingt einen Wert erhalten muß.
Tabelle MetaDaten (Dimension: 1 Zeile)
[Startjahr] INT ist der Schlüssel der Tabelle
[Endjahr] INT NN
[Aktuellesjahr] INT NN
[AktuelleSaison] CHAR(2) NN
[AktuellesJahrFuerStudis] INT NN
[AktuelleSaisonFuerStudis] CHAR(2) NN
[LetzteVLNummer] INT NN
[SuperUsername] CHAR(8) NN
[SuperPasswort] CHAR(8) NN
[AdminEmail] TEXT NN
[AdminReplyEmail] CHAR(80) NN
[AutorEmail] CHAR(80) NN
5.2. DIE DATENBANK
31
[InstitutsServletLogin] CHAR(10) NN
[TitelRundschreiben1] CHAR(50)
[TitelRundschreiben2] CHAR(50)
[TitelRundschreiben3] CHAR(50)
[TitelRundschreiben4] CHAR(50)
[TitelRundschreiben5] CHAR(50)
[TitelRundschreiben6] CHAR(50)
[TitelRundschreiben7] CHAR(50)
[TitelRundschreiben8] CHAR(50)
[TitelRundschreiben9] CHAR(50)
Tabelle Institute (Dimension: derzeit 28 Zeilen)
[Kurz] CHAR(4) ist der Schlüssel der Tabelle
[InstNr] INT NN UNIQUE (darf nur einmal benutzt werden)
[Name] CHAR(150) NN
[Fachname] CHAR(100) NN
[LinkZurHomepage] CHAR(50)
[AdminEmail] TEXT NN
[EmailFuerBeschwerden] CHAR(100)
[DBUsername] CHAR(8) NN UNIQUE
[DBPasswort] CHAR(8) NN UNIQUE
[Login] CHAR(10) NN
[LVAfuerGrund] CHAR(15)
[LVAfuerHaupt] CHAR(15)
[LVAfuerNeben] CHAR(15)
[LVAfuerNicht] CHAR(15)
32
KAPITEL 5. IMPLEMENTIERUNG DES KOMMVOR
Tabelle Vorlesungen (Dimension: ca. 120 Zeilen * Anzahl Semester)
[Id] CHAR(25) ist der Schlüssel der Tabelle
[VLName] CHAR(100) NN
[LVATyp] CHAR(50)
[Jahr] INT NN
[DBUsername] CHAR(8)
[DBPasswort] CHAR(8)
[InstKurz] CHAR(4) NN ist Schlüssel in der Tabelle Institute
[LinkVLInfoInst] CHAR(80)
[DozentName] CHAR(50) NN
[DozentEmail] CHAR(50)
[DozentTelefon] CHAR(30)
[DozentSprechzeit] CHAR(50)
[AssiName] CHAR(50)
[AssiEmail] CHAR(50)
[AssiTelefon] CHAR(30)
[AssiSprechzeit] CHAR(50)
[VLZeitOrt] TEXT
[UEZeitOrt] TEXT
[StartDatum] CHAR(20)
[LVADauer] CHAR(10)
[Saison] CHAR(2)
[Semester] CHAR(15)
[empfSemester] CHAR(20)
[Hoererkreis] TEXT
[Voraussetzungen] TEXT
[Scheinerwerb] CHAR(50)
[Inhalt] TEXT
5.2. DIE DATENBANK
[Bemerkungen] TEXT
[Literatur] TEXT
[Sonstiges] TEXT
[Extra1Name] CHAR(30)
[Extra1Wert] TEXT
[Extra2Name] CHAR(30)
[Extra2Wert] TEXT
[InstNr] INT
[LVAfuer] CHAR(25)
33
34
KAPITEL 5. IMPLEMENTIERUNG DES KOMMVOR
Kapitel 6
Ausblick
• Die Eingabe und Ausgabe soll auch aus bzw. in anderen Dateiformaten möglich sein. So soll die Ausgabe wahlweise als Postscript
oder Adobe PDF möglich sein. Des weiteren wurde angeregt, daß
die Eingabe aus bestehenden Datenbanken oder Html-Seiten kopierbar sein könnte. Das wäre möglich, wenn man dem KommVor
die benötigte Berechtigung und die Daten in Parameterform in
der URL übergeben kann.
• Es soll eine Hilfeseite bzw. mehrere kontextabhängige Hilfeseiten
zur Verfügung gestellt werden.
• Die Navigationsleiste soll durch ein Extrafenster ersetzt werden,
welches immer ganz oben auf dem Bildschirm zu sehen ist (always
on top) und alle Links enthält, evtl. sogar mit Kontextmenu.
• Verallgemeinerung zu einem TU-weiten KommVor
• Es soll eine englischsprachige Version erstellt werden. Dazu könnte man die Texte in Sprachdateien auslagern, so daß die Entwicklung einer französisch- oder anderssprachigen Version erleichtert
würde.
• Die Passwörter sollen in der Datenbank verschlüsselt gespeichert
werden (Einweg-Verschlüsselung). Dabei wird das eingebene Wort
verschlüsselt und mit dem DB-Eintrag verglichen.
35
36
KAPITEL 6. AUSBLICK
• Es soll ein besseres System für Institute, die derzeit zwei Accounts
benötigen, entwickelt werden..
• Zum einfachen Backup der Datanbank soll es einen Knopf im
Admin-Servlet geben.
• Ein neues Feld in die Tabelle Vorlesungen einfügen: Diese Vorlesung ist mit folgenden Lehrveranstaltungen zum Vertiefungsfach
verknüpfbar.
• Ein neues Feld in die Tabelle Vorlesungen einfügen: Freigabe. Dieses Feld kann bei der Eingabe der Lehrveranstaltung (de)aktiviert
werden, so daß andere Institute diese Lehrveranstaltung (nicht)
übernehmen können.
• Änderung in der Institute-Tabelle: Felder für das erste Semester
des Instituts im KommVor und für das letzte Semester im KommVor anlegen (neue bzw. geschlossene Institute). Dadurch entfällt
dann das Löschen von Instituten und neue Institute müssen nicht
mehr in alten KommVors erscheinen.
• Die Institute sollen das Senden der ID/Passwort-Kombination an
ihr Institute per Knopf im Institute-Servlet selbst ermöglichen
und sperren können.
Anhang A
Literatur und
WWW-Quellen
Auch wenn es eine Menge Bücher gibt, die sich mit den Themen ServerClient-Kommunikation im Internet, Java-Servlets, Java-JDBC usw. befassen, von denen ich einige durchgeblättert habe, seien hier nur diejenigen aufgeführt, die mich auch wirklich weitergebracht haben und
deren Inhalte in dieser Studienarbeit wiederzufinden sind. Das größte
Problem stellt nicht die Information an sich da, sondern die Selektion
der benötigten Information.
1. Peter Roßbach, Hendrik Schreiber
Java Server und Servlets
Addison-Wesley, 1999
Das Buch besteht aus drei Teilen. Der erste Teil erklärt die Funktionsweise von Servlets. Hier wird auf 80 Seiten das grundlegende
Wissen gut vermittelt. Der zweite und dritte Teil enthält komplizierte Programmbeschreibungen eines Programms mit ServletBenutzung der Autoren.
Website zum Buch: www.webapp.de
2. Jason Hunter, William Crawford
JAVA Servlet Programming
O‘Reilly, 1998
Standardwerk.
37
38
ANHANG A. LITERATUR UND WWW-QUELLEN
3. Norman Hendrich
Java für Fortgeschrittene
Springer, 1998
4. David Flanagan
Java in a nutshell
O‘Reilly, 1998
5. Rainer Klute
JDBC in der Praxis
Addison-Wesley-Longman, 1998
6. Stefan Münz, Wolfgang Nefzger
HTML 4.0 Handbuch
Franzis-Verlag, 1998
Leichtverständliche HTML-Einführung
7. Rames Abdelhamid
Das Vieweg LATEX-Buch
Vieweg, 1993
Spitzen-Buch für Einsteiger in LATEX. Beschreibt kurz und
prägnant, aber verständlich alles Wichtige.
8. Helmut Kopka
LATEX – eine Einführung
Addison-Wesley, 1991
Standardwerk.
9. Java-Homepage der Firma Sun Microsystems
Hier findet man alle Java-Versionen und Zusatz-Module (API)
incl. Dokumentationen zum Herunterladen. Ebenso sind OnlineDokumentionen zu allen bisherigen Java-Versionen verfügbar.
Homepage: www.java.com bzw.: java.sun.com
Homepage der Dokumentation: http://java.sun.com/docs/index.html
Online-Dokumentation (evtl. die Verisonsnummer 1.1 durch eine
aktuelle Nummer ersetzten):
http://java.sun.com/products/jdk/1.1/docs/api/packages.html
Diese Dokumentation ist meistens auch lokal auf der Festplatte mit dem Java-Development-Kit (JDK) zusammen installiert,
39
z.B.:
/Programme/java/jdk1.2.1/docs/api/index.html
10. Java-Servlet-Seiten der Firma Sun Microsystems:
Homepage: http://java.sun.com/products/servlet/index.html
Die Seite der benutzten Version:
http://java.sun.com/products/servlet/2.2/javadoc/index.html
Eine Kurzeinführung (Tutorial) zu Servlets:
http://java.sun.com/docs/books/tutorial/servlets/index.html
11. Java-JDBC-Seiten der Firma Sun Microsystems:
http://java.sun.com/products/jdbc/index.html
12. Java-Mail-Api der Firma Sun Microsystems:
http://java.sun.com/products/javamail/index.html Hierzu wird noch die
Java-Activation-API
benötigt:
http://java.sun.com/beans/glasgow/jaf.html
13. Html-Dokumentationen: z.B.: http://www.teamone.de/selfaktuell/
14. MySQL Homepage http://www.mysql.com/
15. Apache-Server Homepage: http://www.apache.org/
bzw.: http://java.apache.org/
16. Java-Seiten und GNU-Software rund um Java:
http://www.oio.de/links.htm
17. Weitere Internet-Seiten-Sammlung auf meiner Homepage:
http://www.tu-bs.de/~meschner
Herunterladen