Universität Osnabrück Seminar Web-Publishing WS 98/99 Leitung: Prof. Oliver Vornberger Vortrag: Symantec Visual Café 2.5 eine Java Entwicklungsumgebung Referent: Stefan Rauch Inhalt 0. Einleitung Seite 3 1. Das Programmpaket Seite 3 1.1 1.2 Visual Cafe – die Entwicklungsumgebung Seite 4 1.1.1 Der Workspace Seite 4 1.1.2 Das Project Window Seite 5 1.1.3 Der Form Designer Seite 6 1.1.4 Die Property List Seite 6 1.1.5 Das Source Window Seite 7 Visual Page – der HTML-Editor 2. Erstellen eines Applets 3. Komplexere Applets mit Eventverarbeitung Seite 8 Seite 8 Seite 11 3.1 Der Interaction Wizard Seite 11 3.2 Der Class Browser Seite 12 3.3 Der Hierarchy Editor Seite 13 3.4 Der JAR Packager Seite 14 4. Der Visual Café Debugger Seite 15 5. Stärken und Schächen von Visual Café – ein Fazit Seite 16 Visual Café eine Java-Entwicklungsumgebung 0. Einleitung Symantec Visual Café ist eine Rapid Application Development (RAD)-Umgebung zum Erstellen von Java-Applets im Web und Java Anwendungen im Einzelbetrieb. Eine große Zahl von What You See Is What You Get (WYSIWYG)-Werkzeugen und Komponenten wird dem Benutzer zur Verfügung gestellt, damit dieser einfach, problemlos und schnell „high performance Web-Applets“ erstellen kann. So behauptet es zumindest das mitgelieferte Handbuch der Visual Café Professional Development Edition 2.5 – ob dem so ist, wie das ganze Programmpaket aufgebaut ist und funktioniert und wo seine Stärken und Schwächen im Bereich Web-Publishing liegen, soll im Rahmen dieses Referates erarbeitet werden. Vorab sei bemerkt, daß der zeitlich begrenzte Umfang des Referates es nicht zuließ, das komplette Programmpaket detailliert zu begutachten und vorzustellen. Aus diesem Grund wird im folgenden hauptsächlich Augenmerk auf das Erstellen, Debuggen und Veröffentlichen einfacher Applets gelegt. Wichtige Funktionen des Programmpakets im Zusammenhang mit dem Entwickeln größerer JavaApplikationen bleiben daher unberücksichtigt. Im Rahmen dieses Referates wurde die Software auf einem PC mit 300 MHz Prozessor und 64 MB Ram unter dem Betriebssystem Windows 98 getestet. Die im Rahmen des Referats erstellten und in dieser Ausarbeitung nur als Screenshots zu sehenden Applets sind in der HTML-Version des Vortrages zu sehen. Die HTML-Version liegt an der gleichen Stelle im WWW wie dieses Dokument. 1. Das Programmpaket Die dem Autor vorliegende Version von Symantec Visual Café beinhaltet folgende Teile: • Visual Café PDE (Professional Development Edition) 2.5 • Visual Page • Handbuch Visual Café for Java • Handbuch Visual Page • Booklets Visual Café Einführung Visual Page Installation und Tour Symantec Visual Café – Was ist neu in Visual Café Das Software-Paket ist ausgelegt für die Benutzung unter Windows 95/98 und Windows NT. Symantecs Visual Café ist in drei verschiedenen Versionen verfügbar. Das Basispaket Web Development Edition (WDE – in Version 3.0 auch Standard Edition genannt) beinaltet die WYSIWYG-Werkzeuge und Komponenten, Unterstützung für JDK 1.1. und Migration von JDK 1.02 in JDK 1.1 sowie über 100 Java Beans Komponenten und Java Foundation Classes (JFC). Die Professional Development Edition, die für das Referat zur Verfügung stand, bietet zusätzlich noch die Möglichkeit der Kompilation von Pure Java Code in x86 Code und inkrementelles grafisches Debugging. Die teuerste Variante database Development Edition (dbDE) bietet mit dem Symantec eigenen dbANYWHERE-Server die Möglichkeit datenbankfähige beans zu nutzen und selbst zu erstellen, sowie Unterstützung für Stefan Rauch Seminar Web-Publishing Seite 3 Visual Café eine Java-Entwicklungsumgebung über 30 Datenbanken durch ODBC und native Unterstützung für Informix, Sybase, Oracle und Microsoft SQL-Server. Zum Zeitpunkt des Referatvortrages (5. Februar 1999) ist Symantecs Visual Café schon in der Version 3.0 im Handel erhältlich. Da diese Version leider nicht zur Verfügung stand, können die dort vorgenommenen Neuerungen und Verbesserungen nicht berücksichtigt werden. 1.1 Visual Café – die Entwicklungsumgebung Wie auf diesem Screenshot schon zu sehen, sind für die Erstellung von Java-Applets mit der Entwicklungsumgebung Visual Café 2.5 PDE viele verschiedene Fenster notwendig. Um einen kurzen Überblick über die Handhabung von Visual Café zu bekommen, werden im folgenden die wichtigsten Fenster zur Entwicklung von JavaApplets vorgestellt. 1.1.1 Der Workspace Ausgangspunkt jeglichen Arbeitens mit Visual Café ist der Workspace. Er besteht aus der Menüleiste (die sich je nachdem, welches Fenster bearbeitet wird, leicht anpaßt), beliebig zu verwendenden toolbars und optional einer Statusleiste. Stefan Rauch Seminar Web-Publishing Seite 4 Visual Café eine Java-Entwicklungsumgebung Ein großer Vorteil von Visual Café ist die Möglichkeit mehrere verschiedene Workspaces zu definieren und während der Entwicklung zwischen diesen zu wählen (bzw. umzuschalten). So ist es z.B. sinnvoll zumindest je einen Workspace für das Editieren und das Debuggen einer Anwendung zu definieren. Es ist zwar möglich die einzelnen toolbars auf dem jeweiligen Workspace oder frei im Raum zu plazieren, aber die toolbars sind selbst nicht mehr zu konfigurieren. Als einzige toolbar ist die Component Palette sehr schön einzeln zu konfigurieren. In der Component Palette werden alle ausgewählten vorgefertigten Komponenten auf den zugeordneten charts als Symbole zur Verfügung gestellt. Diese Symbole ermöglichen es dem Benutzer später die Komponenten per drag and drop in das Java-Applet einzufügen. Leider ist die Component Palette lediglich über die generellen Umgebungsoptionen (tools/environment options) zu konfigurieren, so daß ihr Aussehen in jedem Workspace gleich ist. Neben der Component Palette stehen dem Benutzer von Visual Café noch fünf weitere toolbars zur Verfügung. Standard (Neue Datei, Datei öffnen, Auschneiden, Kopieren etc.) Views (Ermöglicht das schnelle Wechseln zu einer Auswahl wichtiger Fenster) Debug (Hält einige wichtige Debug-Funktionen vor) Layout (Einige Symbole um das Layout der Anwendung zu verändern) Workspace (Zum Umschalten zwischen den definierten Workspaces) Der Workspace läßt sich gut individuell anpassen – hier sticht vor allem die Möglichkeit hervor, verschiedene Workspace-Einstellungen zu definieren und zu nutzen. Ärgerlich ist, daß die Component-Palette nicht passend zum jeweiligen Workspace definiert werden kann. Dies macht einen eigenen Workspace, je nach Art der Anwendung, die der Benutzer entwickeln möchte, weitestgehend sinnlos. 1.1.2 Das Project Window Ausgangspunkt der Entwicklung eines Java-Applets mit Visual Café ist das Erstellen eines neuen Projekts. In Visual Café ist es nahezu zwingend erforderlich ein Applet im Rahmen eines Projekts zu entwickeln, da nur in diesem Fall eine Unterstützung der Drag and DropFunktionen gewährleistet ist. Zu einem Projekt gehören im Normalfall mindestens folgende Dateien: .vpj (Projektdatei) .vep (Projekt-Optionen und Dateiliste) .ve2 (weitere Projekt-Informationen) .cdb (Compiled Database – Informationen über Abhängigkeiten der Dateien) .java (Quellcode des Applets) .class Die ersten vier hier genannten Dateien werden von Visual Café selbst erzeugt, Stefan Rauch Seminar Web-Publishing Seite 5 Visual Café eine Java-Entwicklungsumgebung die anderen werden vom Benutzer mit Visual Café erstellt. Das Project Window hat drei verschiedene Ansichten. Die Object-Registerkarte bietet einen Überblick über die einzelnen im Projekt befindlichen Objekte. Dies können Applets/Applikationen oder auch HTMLDokumente sein. Die in Applets vorhandenen Komponenten sind in einer Baumhierarchie hinter dem jeweiligen Eintrag für das Applet aufgelistet und können somit auch direkt von der Object-Registerkarte des Project Windows aus bearbeitet werden. Das Pendant zur Object-Registerkarte, von der aus man die Entwicklung mittels RAD starten kann, ist die Files-Registerkarte. Hier werden alle zum Project gehörigen Dateien aufgelistet, auch eventuell zugefügte Grafik-, Sound- oder andere Dateien. Bei Java Quelldateien und HTML-Dokumente ist ausgehend von der FilesRegisterkarte Editieren des Quellcodes möglich. Eine dritte Ansicht bietet die Packages-Registerkarte im Project Window. Hier wird aufgeführt, welche Dateien/Objekte dem aktuellen Projekt in einem Paket (namens default) zugeordnet sind und welche anderen packages noch von Bedeutung für das Projekt sind. Das Project Window ist eine zentrale Übersicht aller Dateien, die im Projekt integriert sind, es hält Informationen über Abhängigkeiten und zu importierende packages bereit und ist Ausgangspunkt für die Entwicklung bzw. das Ändern der Java-Applets mittels der zur Verfügung stehenden rapid application tools. 1.1.3 Der Form Designer Im Form Designer werden die einzelnen Komponenten eines Java-Applets zunächst zusammengestellt und angeordnet. Per Drag and Drop oder über Menübefehle, können die von der Firma Sun oder von Symantec zur Verfügung gestellten Komponenten dem Applet hinzugefügt werden. Änderungen der Eigenschaften der Komponenten werden im Form Designer immer sofort umgesetzt, so daß der Benutzer schon viele der Effekte beobachten kann, ohne sein Applet zu kompilieren. Viele Eigenschaften der vorgefertigten Komponenten und des gesamten Applets lassen sich schnell und einfach über die Property List verändern. 1.1.4 Die Property List Wie der Name schon sagt, werden in der Property List bestimmte Eigenschaften des Applets und der einzelnen im Applet befindlichen Komponenten definiert bzw. geändert. Das Ändern der meisten Eigenschaften, wie z.B. Hintergrundfarbe, Schriftart und –stil, oder der Text auf einem Label etc. werden sofort im Form Designer angezeigt. Mit der Property List ist es Stefan Rauch Seminar Web-Publishing Seite 6 Visual Café eine Java-Entwicklungsumgebung u.a. sehr einfach möglich dem Applet und den darin befindlichen Komponenten pixelgenau ihre Position und Größe anzugeben. Auch Namen des Applets und der Instanzen der darin befindlichen Komponenten werden über die Property List definiert. 1.1.5 Das Source Window Da naturgemäß nicht alle Eigenschaften und Funktionen des Applets über den Form Designer und die Property List zu definieren sind, bietet Visual Café auch noch die Möglichkeit in einem Source Window den Quellcode der java-Datei oder des HTMLDokuments zu editieren. Durch eine allerdings leider nicht voll funktionsfähige 2Wege Entwicklung ist es meistens möglich die Auswirkungen der Änderungen im Quellcode auch im Form Designer zu betrachten. Das Hervorheben von Schlagwörtern (sowohl für Java-Dateien als auch für HTMLDokumente), eine gute Suchfunktion, sowie für Java Quelldateien auch eine Übersicht der Objekte und Ihrer Funktionen, erleichtern das Editieren der Quelldateien mit dem Source Window. Stefan Rauch Seminar Web-Publishing Seite 7 Visual Café eine Java-Entwicklungsumgebung 1.2 Visual Page - der HTML-Editor Mit dem Software-Paket mitgelieferter WYSIWYG-HTML-Editor, der das Einbinden der Applets in HTML-Dokumente schnell und einfach ermöglicht. Mit Hilfe von Visual Page lassen sich Websites einfach gestalten. Visual Page bietet Unterstützung für die gängigsten features einer Webseite, wie z.B.: Schnelles Erstellen von Framesets Page Properties leicht zu setzen (Farbeinstellungen für Text, Links etc., Hintergrundfarbe/-bild, Standardlinks usw.) Einfaches Formatieren der Web-Seite (Oberfläche wie ein Texteditor) Drag and Drop für Video, Grafik, Java Applets, Tabellen, Links etc. Website-Verwaltung per ftp Mit Visual Page ist es auch möglich, direkt den Quellcode eines HTML-Dokuments zu bearbeiten und sich die Ergebnisse in einem Preview-Modus anzuschauen. Leider ist sowohl im Source Editor als auch im Page Editor höchstens ein einmaliges Undo möglich und beim Einbinden der erstellten Java-Applets ist es störend, daß die ARCHIVE-Variable von Hand gesetzt werden muß. 2. Erstellen eines Applets Zum Erstellen eines Applets mit Visual Café sollte zunächst ein neues Projekt erstellt werden. Hier bietet Visual Café die Möglichkeit sogenannte vorgefertigte ProjectTemplates zu nutzen. Dem Paket sind 9 vorgefertigte Project-Templates beigefügt: Basic Win32 GUI Application (zum Erstellen von nativen Executabels) Stefan Rauch Seminar Web-Publishing Seite 8 Visual Café eine Java-Entwicklungsumgebung Basic Win32 Dynamic Link Library (zum Erstellen von nativen DLL’s) Basic Win32 Console Application (Applikation ohne GUI-Eigenschaften) Empty Project (Projekt in das noch keine Objekte eingefügt sind) Bean Wizard (Hilfsmittel zum Erstellen eigener Java Beans) Basic Application (hält einen Frame mit Menu Bar, sowie einen AboutDialog und einen QuitDialog vor) Basic Applet (hält ein leeres Applet vor) JFC Frame (wie Basic Application, allerdings auf Basis der Java Foundation Classes) JFC Applet (wie Basic Applet, allerding auf Basis der Java Foundation Classes) Im Rahmen des Referatvortrages wurde ausschließlich das Project-Template Basic Applet genutzt. Nachdem der Benutzer das Project-Template ausgewählt hat, erscheint das Project Window sowie der Form Designer und eventuell die Property List auf dem Bildschirm. Im Project Window kann auf der Object-Registerkarte erkannt werden, daß bislang ein Applet im Projekt vorhanden ist. Dieses Applet ist auch im Form Designer dargestellt und seine Eigenschaften sind in der Property List aufgeführt. Im folgenden wird kurz vorgestellt, wie man ein einfaches Hello World Applet erstellt und in ein HTML-Dokument einbindet, ohne selber Quellcode eingeben zu müssen. Für das Hello World Applet benötigt der Benutzer neben dem schon vorgefertigten Applet lediglich ein Label (natürlich würde auch ein TextField, eine TextArea etc. funktionieren). Diesem Label sollte der Benutzer über die Property List einen Schriftzug („Hello World“) und eine andere Hintergrundfarbe als das Applet zuweisen. Um sich das Applet probeweise anzuschauen, bietet Visual Café die Möglichkeit, die Anwendung zu kompilieren und im Appletviewer auszuführen. So wie das Applet im Appletviewer zu sehen ist, wird es später auch im HTMLDokument aussehen. Wenn der Benutzer mit dem Aussehen des Applets zufrieden ist, sollte er das ganze Projekt abspeichern. Hierzu empfiehlt es sich, für jedes Projekt ein eigenes Unterverzeichnis anzulegen, da die Anzahl der Dateien in einem Projekt sehr groß werden kann. Dies trägt zur besseren Übersicht bei. In den Optionen des Projekts sollte nun der Modus von debug auf final umgestellt werden, damit Klassenpfade, weitere Dateien und Abhängigkeiten in die .class Datei und ein eventuelles JAR-Archiv mitaufgenommen werden. Nach einer neuerlichen Kompilation ist das Applet fertig und kann mittels Visual Page in ein HTML-Dokument eingebunden werden. Hier empfiehlt es sich das HTML-Dokument mit in das Projekt zu integrieren (Insert File into Project). So ist es möglich ohne Hinzufügen von selbst erstellten Quellcode einige schöne Applets zu erstellen. Hier helfen vor allem die von Symantec vorgefertigten Komponenten, von denen einige im folgenden Applet eingebunden sind. Diese Komponenten lassen sich (wie auch das Label für das Hello World Applet) einfach per Drag and Drop in den Form Designer ziehen und können dann über Menübefehle und die Property List angeordnet und geändert werden. Hier ein Screenshot eines Applets mit einigen dieser Komponenten (insgesamt hält Visual Cafe über 100 dieser Komponeneten vor): - Stefan Rauch Seminar Web-Publishing Seite 9 Visual Café eine Java-Entwicklungsumgebung Diese Auswahl von Komponenten zeigt, wie leicht Visual Café es dem Benutzer macht, seine Webseiten mit poppigen Applets aufzufrischen. Oben links ist die ScrollingText-Komponente, die den vom Benutzer editierten Text entweder von rechts nach links oder umgekehrt über den definierten Rahmen scrollt. Hintergrundfarbe, sowie Textfarbe und –stil können über die Property List ebenso bearbeitet werden, wie Scrollgeschwindigkeit und Größe des Rahmens. Auch können einzelne Wörter des scrollenden Textes mit Hyperlinks versehen werden. Sehr ähnlich hierzu ist die sogenannte NervousText Komponente, bei der sich die Buchstaben des editierten Textes einzeln bewegen. Allerdings ist das Zittern des Textes hier genau voreingestellt und es können keine Veränderungen in Geschwindigkeit oder Umfang des Zitterns vorgenommen werden. Eine weitere sehr schöne Komponente ist der Animator. Hier können Bilder zu einer Sequenz zusammengefügt werden, so daß es letztlich so aussieht, als würde sich etwas bewegen (z.B. das Flugzeug). Die Wirkungsweise ist ähnlich der eines animierten gifs – nur kann man mit der Animator-Komponente sein eigenes animiertes gif in ein Applet einbauen. Eine Steigerung hierzu ist der Moving Animator, der zusätzlich noch erlaubt die Animation über einen Rahmen von rechts nach links (bzw. umgekehrt) laufen zu lassen. Zwar ist es auch möglich, der ImageViewer-Komponente ein animiertes gif mitzugeben, allerdings hat man dann keinen Einfluss mehr auf die Geschwindigkeit der Animation etc. Die auf dem Screenshot rechts in der Mitte befindliche progressBar-Komponente, ist ein schöenes Hilfsmittel um den Fortschritt eines Vorgangs optisch darzustellen, so daß der Nutzer einer Webseite weiß, wie lange er ungefähr noch zu warten hat.. Auch die äußerliche Erscheinung dieser Komponente läßt sich vielfältig gestalten und verändern. Zwei Komponenten, bei denen man leider nicht sehr viele Einstellungen vornehmen kann, sind fireworks (unten links) und plasma (unten rechts). Die fireworksKomponente (leider auf dem screenshot nicht sehr gut zu erkennen) zeigt eine zufällige Anzahl von Feuerwerksexplosionen an zufälligen Stellen innerhalb eines zu definierenden Rahmens. Das Plasma ist für die Gestaltung einer normalen Webseite eher unbrauchbar, da sich auch hier weder die Farben noch die Art der Animation (ein waberndes Plasma) ändern lassen. Dies ist nur eine kleine Auswahl der über 100 Komponenten, die Visual Café für den Benutzer zur Verfügung stellt. Gängige Komponenten, wie Buttons, Labels, textAreas etc., sind ebenso in der Component Palette zu finden, wie einige komplexe Multimedia-Komponenten der Firma Symantec. So ist es dem Benutzer von Visual Café leicht möglich seine Webseiten ohne größere Java-Kenntnisse mit einigen aufwendigen Java-Applets zu bereichern. Stefan Rauch Seminar Web-Publishing Seite 10 Visual Café eine Java-Entwicklungsumgebung 3. Komplexere Applets mit Eventverarbeitung Da Visual Café PDE 2.5 das jdk 1.1 unterstützt, ist es sinnvoll dem Thema Visual Café-Applets und Eventverarbeitung ein eigenes Kapitel zu widmen. Eventverarbeitung mit Visual Café bietet einige große Vorteile, aber auch leider recht viele Lücken und Fehler. 3.1 Der Interaction Wizard Das wichtigste Werkzeug zur Eventverarbeitung ist der Interaction Wizard. Mit dem Interaction Wizard können einzelne Komponenten des Applets (auch die AppletKomponente selber) miteinander verbunden werden, um so eine Beziehung zwischen diesen beiden Komponenten aufzubauen. Im nun aufspringenden Fenster kann zunächst das auslösende Ereignis definiert werden (beim Hello World Applet zum Beispiel mouseEntered label1) und dann die Reaktion der verbundenen Komponente (Hello World Applet – setze neue Hintergrundfarbe) – es kann hier auch eine Reaktion einer beliebigen anderen Komponente definiert werden. Sollte für die Ausführung der gewünschten Ereignisverarbeitung noch eine Spezifikation vonnöten sein, so kann diese in einem weiteren Fenster definiert werden. Stefan Rauch Seminar Web-Publishing Seite 11 Visual Café eine Java-Entwicklungsumgebung Der Interaction Wizard erzeugt nun den für die Eventverarbeitung benötigen Quellcode. Er implementiert notwendige Listener und schreibt/überschreibt Methoden zum Ausführen der definierten Aktionen. Dem erfahreneren Java-Programmierer ist es nun noch möglich die Aktionen im Quellcode zu ändern oder genauer zu definieren. Leider ist keine Übersicht über die bisherigen Verbindungen der einzelnen Komponenten verfügbar, so daß der Benutzer nicht direkt sehen kann, welche Aktionen an welche Events gebunden sind. Dies ist nur durch mühsames Durchforsten des Quellcodes möglich. Ebensowenig stellt Visual Café eine Möglichkeit zur Verfügung die mit dem Interaction Wizard erstellte Eventverarbeitung wieder rückgängig zu machen. Die Aktionen, die man auf bestimmte Events definiert hat, können nur im Source Window per Hand zurückgenommen werden, was dem Interaction Wizard viel von seiner Atträktivität nimmt. Jedoch bleibt der Interaction Wizard ein mächtiges Instrument, mit dem der Benutzer seinem Applet in wenigen einfachen Schritten ein gewisses Maß (an zugegeben simpler) Eventverarbeitung mitgeben kann ! 3.2 Der Class Browser Bei der Erstellung von größeren komplexen Applets verliert der unerfahrene Programmierer leicht den Überblick. Ein nützliches Hilfsmittel um dies zu verhindern ist der Class Browser. Visual Café stellt mit dem Class Browser ein Werkzeug zur Verfügung, das dem Benutzer ermöglicht, schnell einen Überblick über die Hierarchie der einzelnen Klassen seines Projekts sowie deren Eigenschaften und Methoden zu bekommen. Der Class Browser ist in drei Frames eingeteilt. Im Classes-Frame sind alle Klassen die Visual Café kennt aufgelistet (aufgeteilt in packages) – hier kann man die gesuchte Klasse auswählen und sich deren Eigenschaften und Methoden im zweiten Stefan Rauch Seminar Web-Publishing Seite 12 Visual Café eine Java-Entwicklungsumgebung Frame anschauen. Wählt man nun aus dem zweiten Frame eine Methode aus, so kann man im dritten Frame den Quellcode eben jener Methode ändern – so man die Berechtigung dazu hat – logischerweise kann man nur seine eigenen Klassen editieren. Dies ist z.B. eine elegante Methode, um Aktionen, die durch Events hervorgerufen werden, genauer zu spezifizieren und hilft enorm die Übersicht bei komplexen JavaApplets zu bewahren. 3.3 Der Hierarchy Editor Der Hierarchy Editor ist ein von Visual Café zur Verfügung gestelltes Werkzeug, das sehr gut zu Dokumentationszwecken einzusetzen ist. Aus den Projektinformationen generiert Visual Café einen Baum, der die hierarchische Struktur der einzelnen Klassen im Projekt zeigt. Angefangen bei java.lang.Object wird so die Stefan Rauch Seminar Web-Publishing Seite 13 Visual Café eine Java-Entwicklungsumgebung Klassenhierarchie bis zu den eigenen Klassen in einer Baumstruktur dargelegt. Visual Café bietet auch die Möglichkeit die Struktur aller Klassen, die das Programmpaket kennt, im Hierarchy Editor darzustellen. Allerdings bleibt hierbei der Informations-Wert weitestgehend auf der Strecke, da es keine Möglichkeit gibt den Bildausschnitt zu vergrößern oder zu verkleinern. Im Hierarchy Editor können zudem auch noch per Drag and Drop Abhängigkeiten neu definiert werden. 3.4 Der JAR Packager Um die volle Funktionalität eines Applets in Standardbrowsern (Internet Explorer, Netscape Communicator) zu gewährleisten, empfiehlt es sich ein Jar-File zu Stefan Rauch Seminar Web-Publishing Seite 14 Visual Café eine Java-Entwicklungsumgebung erzeugen und die Variable ARCHIVE=“name.jar“ in das Applet-tag der HTML-Datei einzutragen. Das Erzeugen eines JAR-Archives kann in Visual Café auf zwei Arten gemacht werden. Zum einen durch die Auto JAR Funktion oder aber per Hand mit dem JAR_Packager, der hier in der Version 3.1.4 vorliegt. Das Erstellen von jar-files ist eigentlich nur im final Modus sinnvoll. Denn nur in diesem Fall findet der JAR-Packager alle notwendigen Dateien, sofern diese in das Project integriert sind. Nach Aufruf des JAR-Kommandos können allerdings auch noch Dateien dem Archiv hinzugefügt werden, sofern sie noch nicht in das Projekt integriert waren (z.B. jpg- oder gif-Dateien). Mit dem Jar-Packager ist es zudem auch noch möglich, Abhängigkeiten zwischen einzelnen Dateien und packages zu definieren. Ein schon bestehendes JAR-File sollte auf keinen Fall überschrieben werden, da dies zu Unregelmäßigkeiten führen kann. Wenn das JAR-File erzeugt ist, sollte es über die Variable ARCHIVE in das Applettag des HTML-Dokuments eingebunden werden. 4. Der Visual Café Debugger Visual Café 2.5 PDE enthält ein umfangreiches Debugging Werkzeug. Es empfiehlt sich zum Debuggen eines Applets bzw.einer Anwendung den Workspace auf einen eigenen Debug-Modus umzustellen (dies ist auch per default in den Environment Options so eingestellt). Im Debug Modus sind folgende Fenster von Bedeutung: Source Window (s.o. – hier können Breakpoints gesetzt werden, Variablen an das Watch Window geschickt werden und Änderungen des Quellcodes vorgenommen werden) Breakpoints Window (hier können gesetzte Breakpoints beobachtet, gelöscht und ihnen Bedingungen beigefügt werden) Variables Window (enthält alle Variablen die im Projekt genutzt werden könnten) Watch Window (in dieses Fenster kann der Benutzer die Variablen aufnehmen, die er genauer beobachten will und eventuell während des debugging-Vorgangs ändern möchte) Threads Window (hier werden die einzelnen threads der Anwendung und ihr aktueller Zustand dargestellt) Call Stack Window (eine Liste aller noch aktuellen Methodenaufrufe chronologisch sortiert) Messages Window (in diesem Fenster werden alle Nachrichten und vor allem Fehlermeldungen ausgegeben – Doppelklick auf den Fehler bewirkt einen Sprung zur relevanten Stelle des Quellcodes) Um eine Anwendung debuggen zu können müssen, Breakpoints gesetzt werden. Dazu genügt es im Quellcode über die rechte Maustaste oder das Source Menü zunächst einen Breakpoint zu setzen. Dieser ist sofort im Breakpoints Window sichtbar und durch Doppelklick kann man stets an seine Position im Source Code gelangen. Visual Café bietet zudem noch die Möglichkeit, Bedingungen im Feld Conditions (im Breakpoint Window) anzugeben, so daß der Debugger nur in bestimmten Fällen an diesem Breakpoint anhält. Stefan Rauch Seminar Web-Publishing Seite 15 Visual Café eine Java-Entwicklungsumgebung Während des debug-Vorgangs kann man sich Werte aller Variablenanzeigen lassen. Dies geschieht entweder durch Drag and Drop der jeweiligen Variable vom Variablenfenster in das Watch Fenster oder durch EvaluateExpression nach Markieren der Variable im Quellcode. Im Watch Fenster können jetzt alle gewünschten Variablen angezeigt werden und zudem ist es möglich während der Laufzeit ihren Wert zu ändern. Mit Hilfe des debuggers ist es so möglich Änderungen während der Laufzeit auszuprobieren oder durch direkte Eingabe im Quellcode endgültig festzulegen. Größere Änderungen im Quellcode sollten allerdings besser nicht während einer debugging-session vorgenommen werden, da es dann häufiger zu Abstürzen des Programms kommt. 5. Stärken und Schwächen von Visual Café – ein Fazit Vorteile von Visual Café - Individuelles Gestalten des Workspaces Form Designer/Property List/große Component Library Zwei-Wege-Entwicklung Interaction Wizard Class Browser Debugger Nachteile von Visual Café - - Zwei-Wege-Entwicklung instabil Interaction Wizard nicht rückgängig zu machen (nur per Hand im Quellcode) und fehlende Übersicht über vorhandene Interactions Ändern des Quellcodes während des Debugging führt oft zum Absturz Große Probleme beim Erzeugen der JAR-Files und Bereitstellung der Applets fürs Internet (geringe Browser-Kompabilität) Fazit Instabiles Verhalten und große Schwierigkeiten die Applets "browserfähig" zu bekommen machen viele gute features "kaputt".Für das Erstellen größerer Projekte sollte man lieber auf die Version 3.0 zurückgreifen, die nach Zeitungsberichten stabiler läuft. Allgemein ist das Erstellen kleinerer Applets mit Visual Café zum Verschönern von Webseiten gerade für wenig erfahrene Programmierer sehr zu empfehlen. Hier bietet es sich allerdings an die billigere Variante Web Development Edition zu wählen. Anspruchsvolle Programmierer werden sicherlich wenig Freude an diesem Programmpaket finden, da es schlichtweg zu instabil läuft. Stefan Rauch Seminar Web-Publishing Seite 16