Einbinden von Grafiken in Texte
Achtung: Alle Grafiken müssen in das
Projekthandbuch integriert sein. Einzeln abgegebene Grafiken oder
Diagramme werden nicht gewertet, ebsoso wenig wie nur sehr schlecht
lesbare Diagramme!
Um Grafiken in Texte einbinden zu können, sind Bitmap-Grafiken
(z.B. JPG, PNG, GIF, TIF, ...)
nicht geeignet! Die besten Ergebnisse erzielt man mit
Vektor-Grafik (z.B. PS, PDF abhängig von der Erzeugung, kann es
auch Bitmap-Grafik sein). Eine Möglichkeit besteht darin, die Grafik als
Postscipt in eine Datei zu "drucken" und diese in PDF oder EPS
umzuwandeln, z.B. mit ps2pdf oder Ghostscript (s.Tab.). EPS kann
z.B. genutzt werden, um Diagramme in M$ Word oder OpenOffice
einzubinden. (PDF)LaTeX akzeptiert EPS (PDF).
Unter Unix ist das Drucken von Postscipt kein Problem, unter Windows
benötigt man hierfür einen Treiber (s.Tab.).
Nachbearbeitung von Diagrammen: Unter Unix ist es
möglich, Diagramme, die als PS oder EPS vorliegen mit einem
Vektor-Zeichenprogramm nachzubearbeiten. Hierfür muß die
Datei konvertiert werden. Das ist mit dem Befehl pstoedit möglich
(z.B. für xfig: pstoedit -f xfig ps-datei.ps
xfig-datei.fig). Sinnvoll z.B. um den Hintergrund von Diagrammen, die
mit 'Poseidon Community Edition' erzeugt wurden, zu entfernen.
Fehlersuche
Compilier-Fehler:
Lösen
von Compiler und Interpreter-Fehlern.
Laufzeit-Fehler:
Während des Programmierens treten i.d.R. Fehler auf, die man
anschließend suchen muß. Diese Aufgabe ist nur
möglich, wenn entweder die Programme entsprechend geschrieben
wurden oder passende Werkzeuge genutzt werden.
Eine wesentliche Voraussetzung zum finden von Fehlern, insbesonder von
der Zeile im Quelltext, die eine Exception verursacht hat, ist die
Ausgabe von allen relevanten Informationen, wie z.B. der sogenannte
Stack-Trace:
catch (Exception e) {
e.printStackTrace() ;
}
Neben diesen Ausgaben bieten einige Entwicklungsumgebungen auch
Debugger an, die die Fehlersuche erleichetern. Ein Beispiel
hierfür ist Eclipse.
Fehlersuche beim Projekt 2
Beim Projekt 2, Programmzugriff aus einem CGI-Skript, gibt es einige
Besonderheiten. Bei jedem Aufruf des CGI-Skripts wird das Programm
gestartet und nach Ausführung der Aufgabe, wieder beendet. Daher
müssen alle Daten zu Beginn geladen und anschließend wieder
gespeichert werden.
Hier können mehrere Fehler auftreten, die in jedem Fall im
Browser nur durch einen 'Internal Server Error' angezeigt werden:
- Falsche Zugriffsrechte des Programmcodes oder der Daten
-
Während der Ausführung des Programms ist ein Fehler
(Exception) aufgetreten.
Der erste Fehler läßt sich beheben, indem dem Web-Server
Leserechte auf alle Daten und auf den Programmcode gegeben wird. Dazu
gehören auch Lese- und Ausf¨hrungsrechte auf allen
Verzeichnissen von dem Wurzelverzeichnis bis zu dem Verzeichnis, vor
die Daten bzw. der Programmcode gespeichert sind.
Die Suche nach Programmfehlern läßt sich vereinfachen,
indem man die Steueranweisung für den Web-Server von der
im Browser anzuzeigenden Web-Seite trennt. D.h. im Detail, die erste
Zeile:
"Content-type: text/html\n\n"
sollte man als erstes vor der eigentlichen Bearbeitung der Daten schon
an der Web-Server schicken. Also sollten als erstes folgende Zeilen im
Programm stehen:
System.out.println("Content-type: text/html\n\n");
System.out.flush();
Diese Zeilen teilen dem Web-Server mit, daß eine Web-Seite als
nächstes geliefert wird. Der Aufruf von flush() bewirkt,
daß der Text sofort geschrieben wird, also nicht noch im Puffer
verbelibt bis weiterer Text zu schreiben ist und somit der Puffer voll
ist.
Erst nach diesen Aufrufen sollte die eigebtliche Bearbeitung
durchgeführt werden. Alle auftretenden Fehler/Exceptions werden
daraufhin im Browser angezeigt.