Michael Seeboerger-Weichselbaum Programmieren mit Eclipse 3 Universelle Entwicklungsplattform für Java, PHP, C/C++, SQL, XML, XSLT, XSL-FO, JSP, Servlets, JEE, UML, HTML, CSS, JavaScript 2., überarbeitete Auflage 2008 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie. Detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar. ISBN 978-3-8266-1751-5 2., überarbeitete Auflage 2008 Alle Rechte, auch die der Übersetzung, vorbehalten. Kein Teil des Werkes darf in irgendeiner Form (Druck, Fotokopie, Mikrofilm oder einem anderen Verfahren) ohne schriftliche Genehmigung des Verlages reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden. Der Verlag übernimmt keine Gewähr für die Funktion einzelner Programme oder von Teilen derselben. Insbesondere übernimmt er keinerlei Haftung für eventuelle aus dem Gebrauch resultierende Folgeschäden. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Printed in Austria © Copyright 2008 by REDLINE GMBH, Heidelberg www.mitp.de Lektorat: Sabine Schulz Korrektorat: Petra Heubach-Erdmann Satz: III-satz, Husby, www.drei-satz.de © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 Inhaltsverzeichnis 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 2 2.1 2.2 2.3 2.4 Einleitung und Ziel des Buches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Die IDE Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Was ist Eclipse? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Welche Programmiersprachen und Technologien unterstützt Eclipse? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mindest-Voraussetzungen für die Installation und den Betrieb von Eclipse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bezug der aktuellen Eclipse-Version . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.1 Installation und Start unter Windows . . . . . . . . . . . . . . . . . . . 1.4.2 Installation und Start unter Linux. . . . . . . . . . . . . . . . . . . . . . . 1.4.3 Installation und Start unter Mac OS X . . . . . . . . . . . . . . . . . . . 1.4.4 Mehrere Versionen parallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.5 Eclipse deinstallieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eclipse spricht Deutsch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eclipse-Distributionen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.1 Die Yoxos-Distribution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.2 EasyEclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.3 Weitere Distributionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Informationen aus dem Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 17 Erste Schritte mit Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erster Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die Oberfläche von Eclipse: Perspektiven . . . . . . . . . . . . . . . . . . . . . . . Ein erstes Java-Projekt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Das Projekt anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 Ein Paket und eine Klasse erstellen . . . . . . . . . . . . . . . . . . . . . 2.3.3 Compilieren und Ausführen . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.4 Die Verzeichnisstruktur des Projekts . . . . . . . . . . . . . . . . . . . . 2.3.5 Der Compiler von Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Programmierhilfen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Content Assist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Syntax Highlighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.3 Zeilennummerierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.4 Klassen, Methoden sowie Kommentare auf- und zuklappen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 19 20 21 21 22 24 24 24 25 26 26 26 27 27 29 29 31 33 33 35 38 39 39 40 40 42 42 42 5 Inhaltsverzeichnis 2.4.5 Automatische Markierung von Klassen, Objekten, Interfaces und Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxfehler anzeigen und beheben . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Syntaxfehler mit Quickfix beheben . . . . . . . . . . . . . . . . . . . . . 43 44 46 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 Java-Entwicklung mit Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Klassen importieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die Applikationen mit Argumenten ausführen . . . . . . . . . . . . . . . . . Eine neue Methode hinzufügen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . JavaBeans erstellen und verwenden . . . . . . . . . . . . . . . . . . . . . . . . . . . Eine jar-Datei erzeugen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Externe jar-Dateien verwenden. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Java-Applets erstellen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 49 51 53 54 58 62 67 4 4.1 Nützliche Hilfen in Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mehrere JREs und SDKs verwenden . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Die Java-Versionen in Eclipse konfigurieren . . . . . . . . . . . . . 4.1.2 Die Java-Versionen wechseln. . . . . . . . . . . . . . . . . . . . . . . . . . Javadoc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Projekte importieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Refactoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.1 Die Idee des Refactorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.2 Umbenennen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.3 Verschieben. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.4 Auslagern in eine Methode . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.5 Ein Interface automatisch erstellen. . . . . . . . . . . . . . . . . . . . . 4.4.6 Kopieren und Löschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Code mit Schleifen oder Bedingungen versehen . . . . . . . . . . . . . . . . 71 71 71 74 76 79 82 82 83 83 84 85 85 86 Debuggen und Testen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Der Debugger. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Den Debugger starten und die Debug-Perspektive. . . . . . . . . . . . . . . Einen Breakpoint setzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Durch den Code gehen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Debuggen beenden und neu debuggen . . . . . . . . . . . . . . . . . . . . . . . . Breakpoint deaktivieren und löschen. . . . . . . . . . . . . . . . . . . . . . . . . . Breakpoints nach Durchläufen aktivieren . . . . . . . . . . . . . . . . . . . . . . Testen mit JUnit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8.1 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8.2 Allgemeine Arbeitsweise von JUnit . . . . . . . . . . . . . . . . . . . . 5.8.3 Beispiel zum Testen mit JUnit . . . . . . . . . . . . . . . . . . . . . . . . 5.8.4 Das Testen mit JUnit aufsetzen . . . . . . . . . . . . . . . . . . . . . . . 5.8.5 Die Test-Klasse und deren Methoden . . . . . . . . . . . . . . . . . . . 87 87 88 89 90 92 92 93 94 94 94 95 96 99 2.5 4.2 4.3 4.4 4.5 5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 6 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 Inhaltsverzeichnis 5.8.6 5.8.7 5.9 6 6.1 6.2 6.3 6.4 6.5 6.6 6.7 7 7.1 7.2 7.3 7.4 7.5 7.6 Den Test durchführen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . assertNull(), assertFalse(), assertNotSame() und assertSame() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Weitere Codetests und -prüfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9.1 FindBugs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9.2 PMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9.3 Checkstyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9.4 Weitere PlugIns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Vorgänge mit Ant automatisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ant und Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ant arbeitet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compilieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jar-Datei erzeugen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dateioperationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.1 Löschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.2 Kopieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.3 Verschieben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.4 Ausführen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Der Ant-Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Debuggen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7.1 Breakpoints setzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7.2 Starten und Stoppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 107 108 109 112 115 115 116 116 116 117 119 120 120 Modellieren mit UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Voraussetzungen und Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ein UML-Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.1 Die benötigten Klassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.2 Das UML-Projekt beginnen. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.3 Pakete und Klasse erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.4 Klassen mit Superklasse und Interfaces erstellen . . . . . . . . . . 7.2.5 Den Konstruktor setzen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.6 Den Sourcecode ansehen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.7 Attribute setzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.8 Methoden setzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.9 Weiteren Code in die Klasse integrieren . . . . . . . . . . . . . . . . . 7.2.10 Die Applikation ausführen . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vererbung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ein Klassendiagramm nachträglich generieren . . . . . . . . . . . . . . . . . . Weitere PlugIns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 121 124 124 125 127 130 134 135 135 137 140 146 146 147 148 148 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 105 105 105 105 106 106 7 Inhaltsverzeichnis 8 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 9 9.1 9.2 9.3 9.4 9.5 9.6 8 Eclipse aktualisieren und mit PlugIns erweitern . . . . . . . . . . . . . . . . Eclipse updaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlugIns installieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.2.1 PlugIns manuell installieren . . . . . . . . . . . . . . . . . . . . . . . . . . 8.2.2 Offline-Installation über den Update Manager . . . . . . . . . . . 8.2.3 Online-Installation über den Update Manager . . . . . . . . . . . Mehrere PlugIns gleichzeitig installieren . . . . . . . . . . . . . . . . . . . . . . Eclipse starten mit der Option –clean . . . . . . . . . . . . . . . . . . . . . . . . . Das sollten Sie bei einer PlugIn-Installation beachten . . . . . . . . . . . . Ein PlugIn aktualisieren, deaktivieren und löschen . . . . . . . . . . . . . . 8.6.1 PlugIn aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.6.2 PlugIn löschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wenn PlugIns fehlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wie und wo gibt es PlugIns? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 149 154 154 156 162 166 167 168 169 169 170 171 172 HTML, CSS und JavaScript mit WTP . . . . . . . . . . . . . . . . . . . . . . . . . Das WTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Installation von WTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HTML und XHTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.1 Zuweisungen der Dateiendung überprüfen. . . . . . . . . . . . . . 9.3.2 Eine HTML-Datei mit HTML-Tags anlegen. . . . . . . . . . . . . . 9.3.3 Templates verwenden. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.4 Attribute zu HTML-Tags schreiben . . . . . . . . . . . . . . . . . . . . 9.3.5 Mit dem Outline-Fenster arbeiten. . . . . . . . . . . . . . . . . . . . . . 9.3.6 Syntax Highlighting und Fehleranzeige . . . . . . . . . . . . . . . . . CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4.1 Zuweisungen der Dateiendung überprüfen. . . . . . . . . . . . . . 9.4.2 Eine CSS-Datei anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4.3 Content Assist, Syntax Highlighting und Fehleranzeige . . . 9.4.4 Das Outline-Fenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.5.1 Zuweisungen der Dateiendung überprüfen. . . . . . . . . . . . . . 9.5.2 Eine JavaScript-Datei erzeugen . . . . . . . . . . . . . . . . . . . . . . . . 9.5.3 Content Assist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.5.4 Syntax Highlighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.5.5 Das Outline-Fenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Validieren und Formatieren mit HTML Tidy . . . . . . . . . . . . . . . . . . . 9.6.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.6.2 Auf Konformität prüfen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.6.3 Formatieren und korrigieren. . . . . . . . . . . . . . . . . . . . . . . . . . 9.6.4 Konvertieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.6.5 HTML innerhalb von PHP und JSP . . . . . . . . . . . . . . . . . . . . 173 173 173 174 174 176 177 177 177 179 180 180 182 182 184 184 184 186 186 187 188 188 188 189 191 192 192 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 Inhaltsverzeichnis 10 10.1 10.2 10.3 10.4 10.5 10.6 11 11.1 11.2 11.3 11.4 11.5 XML, DTD und Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.1.1 Zuweisung der Dateiendung überprüfen. . . . . . . . . . . . . . . . . 10.1.2 Neue XML-Datei anlegen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.1.3 Eingabehilfe und Content Assist. . . . . . . . . . . . . . . . . . . . . . . . 10.1.4 Eine XML-Datei auf der Basis einer DTD erstellen . . . . . . . . . 10.1.5 Eine XML-Datei auf der Basis eines W3C Schemas erstellen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eine XML-Datei grafisch erstellen und editieren . . . . . . . . . . . . . . . . . 10.2.1 Das Outline-Fenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.2 Die Design-Darstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eine DTD erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.1 Zuweisung der Dateiendung überprüfen. . . . . . . . . . . . . . . . . 10.3.2 Eine neue DTD anlegen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.3 Eingabehilfen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.4 Das Outline-Fenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ein XML Schema erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4.1 Zuweisung der Dateiendung überprüfen. . . . . . . . . . . . . . . . . 10.4.2 Eine neue Schema-Datei erzeugen . . . . . . . . . . . . . . . . . . . . . . 10.4.3 Eingabehilfen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4.4 Das Outline-Fenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4.5 Grafische Darstellung der Schema-Datei . . . . . . . . . . . . . . . . . 10.4.6 Eine Schema-Datei grafisch editieren. . . . . . . . . . . . . . . . . . . . Validieren gegen DTD und Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . Weitere XML-PlugIns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 193 193 195 196 197 XSLT und XSL-FO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XSLT mit OrangevoltXSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.1 Zuweisung der Dateiendung. . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.2 XML- und XSLT-Dateien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.3 Den Formungsprozess starten . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.4 XPath mit OrangevoltXSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.5 Weitere PlugIns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ant-Task für XSLT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XSL-FO mit FOP Bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.2 Dateierweiterung hinzufügen . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.3 Nach PDF formen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.4 In andere Formate formen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.5 Weitere PlugIns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ant-Task für XSL-FO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ant-Tasks für XSLT und XSL-FO kombinieren . . . . . . . . . . . . . . . . . . 217 217 218 218 220 222 224 224 226 226 227 227 234 235 235 238 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 199 199 200 202 203 203 203 203 204 205 205 206 207 208 209 211 213 214 9 Inhaltsverzeichnis 12 12.1 12.2 12.3 12.4 PHP mit PDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Installation und Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erste Schritte mit PDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntax Highlighting und Codeunterstützung . . . . . . . . . . . . . . . . . . . PHPEclipse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 239 240 243 244 13 13.1 13.2 13.3 13.4 13.5 13.6 SQL und Datenbanken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die SQL-Perspektive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Der JDBC-Treiber für MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andere Datenbankprogramme mit JDBC-Treibern anbinden. . . . . . Mit der Datenbank arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die Datensätze sortieren und filtern . . . . . . . . . . . . . . . . . . . . . . . . . . 13.6.1 Sortieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.6.2 Filtern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Weitere PlugIns für SQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 245 246 246 250 250 254 254 255 256 JavaServer Pages mit Tomcat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WTP für JSPs und Servlets mit Tomcat. . . . . . . . . . . . . . . . . . . . . . . . 14.1.1 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.1.2 WTP konfigurieren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.1.3 Zugriffsrechte beachten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.1.4 Zuweisung der Dateiendung überprüfen. . . . . . . . . . . . . . . . Ein JSP-Projekt anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.2.1 JSP erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.2.2 JSP ausführen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.2.3 Den Standardbrowser abändern . . . . . . . . . . . . . . . . . . . . . . . 14.2.4 Die Verzeichnisstruktur des Projekts . . . . . . . . . . . . . . . . . . . Tomcat stoppen und neu starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eingabehilfen beim Programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . 14.4.1 Content Assist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.4.2 Syntaxfehler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.4.3 Syntax Highlighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.4.4 Das Outline-Fenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . JavaBeans verwenden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.5.1 jar-Datei importieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.5.2 Mit der Bean verbinden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Externe Bibliotheken einsetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Einzelne class-Dateien erzeugen und verwenden . . . . . . . . . . . . . . . . Exportieren als war-Datei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Weitere PlugIns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 257 257 257 260 260 261 262 264 265 266 267 267 267 268 268 268 269 269 270 270 272 273 273 13.7 14 14.1 14.2 14.3 14.4 14.5 14.6 14.7 14.8 14.9 10 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 Inhaltsverzeichnis 15 15.1 Servlets mit Tomcat und Ant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Servlets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.1.1 Speicherort der Servlets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.1.2 Das Projekt aufsetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.1.3 Die HTML-Dateien. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.1.4 Das Servlet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.1.5 Das Servlet ausführen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deployment mit Ant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.2.1 Das Deployment auf einem Server . . . . . . . . . . . . . . . . . . . . . 15.2.2 Eine war-Datei mit Ant erzeugen . . . . . . . . . . . . . . . . . . . . . . . 15.2.3 Deployment auf einem anderen Server per ftp oder scp. . . . . 275 275 276 276 276 277 284 285 285 286 288 16 16.1 16.2 16.3 16.4 16.5 16.6 16.7 JEE mit JBoss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . JBoss-Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . JBoss starten und stoppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die JMX-Console von JBoss aufrufen . . . . . . . . . . . . . . . . . . . . . . . . . . JSP und Servlets in JBoss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XDoclet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EJBs erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.7.1 Allgemeine Vorgehensweise . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.7.2 Das EJB-Projekt aufsetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.7.3 Eine EJB erstellen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.7.4 Die EJB deployen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.7.5 Die EJB in JSP aufrufen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.7.6 Das Deployment auf JBoss . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 293 294 295 297 299 299 300 301 301 303 307 308 310 17 17.1 17.2 17.3 17.4 17.5 C und C++ mit CDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Voraussetzungen und Installation von CDT . . . . . . . . . . . . . . . . . . . . . Cygwin unter Windows für CDT installieren . . . . . . . . . . . . . . . . . . . . Ein C-Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ein C++-Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Header- und Klassen-Dateien in C++ . . . . . . . . . . . . . . . . . . . . . . . . . . 17.5.1 Die Datei main.cpp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.5.2 Die Klasse erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.5.3 Die Header-Datei einbinden und die Applikation ausführen Externe Header-Dateien und Bibliotheken verwenden . . . . . . . . . . . . 17.6.1 Voraussetzungen für die Entwicklung einer KDE-Applikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.6.2 Das Projekt konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.6.3 Der Code für eine KDE-Applikation . . . . . . . . . . . . . . . . . . . . . 311 311 312 316 322 323 323 324 326 328 15.2 17.6 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 328 329 331 11 Inhaltsverzeichnis 17.7 Eingabehilfen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.7.1 Syntax Highlighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.7.2 Content Assist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.7.3 Anzeige der Syntaxfehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Der C/C++Debugger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.8.1 Debugger unter Windows installieren . . . . . . . . . . . . . . . . . . 17.8.2 Den Debugger einsetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 333 333 334 334 335 336 FTP, WebDAV, CVS und Subversion . . . . . . . . . . . . . . . . . . . . . . . . . Das PlugIn für FTP und WebDAV. . . . . . . . . . . . . . . . . . . . . . . . . . . . Übertragungen mit FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WebDAV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.4.1 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.4.2 Auschecken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.4.3 Einchecken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.4.4 Aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.4.5 Löschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.5.1 Subclipse installieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.5.2 Auschecken mit SVN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.5.3 Dateien oder Verzeichnisse einchecken, löschen und aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 337 337 338 339 340 340 344 345 345 345 346 346 Installation Java JRE und SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Installation JRE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.1 Installation unter Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.2 Installation unter Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.3 Installation für Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . Installation des SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.1 Installation für Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.2 Installation für Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.3 Installation für Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 349 349 349 350 350 351 351 352 B Inhalt der DVD-ROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 C Eclipse Public License – v 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 Stichwortverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 17.8 18 18.1 18.2 18.3 18.4 18.5 A A.1 A.2 12 © des Titels »Programmieren mit Eclipse 3« (ISBN 978-3-8266-1751-5) 2008 by Verlagsgruppe Hüthig Jehle Rehm GmbH, Heidelberg Nähere Informationen unter: http://www.it-fachportal.de/1751 348