Java 1
  • Home
  • Tutorials
    • Hello World
      • Download
      • Installation unter Windows
      • Installation unter Linux
      • Das Hello World Programm
      • Mehr Java
    • Java Konsole
      • Java Konsole Testen
    • Basic Java
      • Java Programme
        • Die Klasse
        • Datentypen
        • Null
        • Casten
        • Operatoren
        • Kontrollstrukturen
        • Arrays
        • Aufgaben
      • Objektorientierte Konzepte
        • Hallo Fenster
        • Objekte einer Klasse
        • Vererbung
        • Interfaces
      • Alles über Klassen
        • Abstrakte Klassen
        • Methoden überschreiben
        • Super
        • Final
        • Innere Klassen
        • Anonyme Klassen
        • Enumerations
      • You're just an object
        • Sichtbarkeit
        • Druckdarstellung
        • Gleichheit
        • Klonen
        • Die Class
        • Serialisierung
    • Java Api
      • Dokumentation
      • Strings
      • Wrapper Klassen
      • System und Runtime
      • Math
      • Exceptions
      • IO
      • Sammlungsklassen
      • AWT und Swing
      • Alle Komponenten
      • Applets
      • Threads
      • Jar
      • Classpath
    • JSP und Servlets
      • Meine erste JSP
        • Downloads
        • Installation unter Windows
        • Installation unter Linux
        • Admin und Manager
        • Webapplication
      • JSP
        • Java Code in HTML einbinden
        • Das HTTP Request - Response Modell
        • Request und Response Objekte
        • Auswerten von Formulardaten
        • Aufgaben
      • Beans
        • Die Session
        • Weitere vordefinierte Objekte
        • Java-Beans
        • Beans programmieren
        • Java-Beans in JSP nutzen
        • Aufgaben
      • Servlets
        • Nutzen der Servlets
        • Servlets programmieren
        • Servlets auf dem Server einrichten
        • Servlets mit JSP
        • Servlets includen
        • Aufgaben
      • Webapplikation
        • Filter
        • Initialisierungsparameter
        • Error Pages
        • Passwortgeschützte Verzeichnisse
        • Bibliotheken nutzen
        • Eine Webapplikation deployen
        • Ausblick: Wie geht's weiter?
        • JSP-Tags Syntaxreferenz
        • Aufgaben
  • Code
    • Web
      • Datenbankverbindungen mit Tomcat
      • Texte richtig encoden
      • HTTPS mit Tomcat
      • HTML Encoden mit Javascript
    • Java
      • Print F
      • Ein generischer Poolbuilder
      • Native Bibliotheken
      • Unique Ids
    • Java FX
      • Balls
      • Hearts
      • Planner
    • Java ME
      • The Next Big Thing
    • System
      • Vi Kommandos
  • Sidemap
  • Impressum
  • Hilfe
Home > Tutorials > JSP und Servlets > Webapplikation > Eine Webapplikation deployen
  • Home
  • Tutorials
    • Hello World
    • Java Konsole
    • Basic Java
    • Java Api
    • JSP und Servlets
      • Meine erste JSP
      • JSP
      • Beans
      • Servlets
      • Webapplikation
        • Filter
        • Initialisierungsparameter
        • Error Pages
        • Passwortgeschützte Verzeichnisse
        • Bibliotheken nutzen
        • Eine Webapplikation deployen
        • Ausblick: Wie geht's weiter?
        • JSP-Tags Syntaxreferenz
        • Aufgaben
  • Code
  • Sidemap
  • Impressum
  • Hilfe

Eine Webapplikation erstellen und deployen

Eine Webapplikation haben wir ja schon, nämlich diesen Kurs. Allgemein gesagt zeichnet sich eine Webapplikation durch eine bestimmte Verzeichnisstruktur aus, deren Merkmale sich wie folgt definieren lassen:

  • Eine Webapplikation myapp hat ein Basisverzeichnis, das sich in der Regel inCATALINA_HOME/webapps/myapp befindet. In diesem Verzeichnis und seinen Unterverzeichnissen befindet sich der statische Content sowie die JSPs. Eine Webapplikation benötigt stets ein WEB-INF Verzeichnis unterhalb des Basisverzeichnisses. Dieses Verzeichnis enthalt den Deployment-Descriptor (web.xml) sowie ggf. weitere Konfigurationsdateien z.B. für Taglibs.

  • Unterhalb von WEB-INF kann sich ein Verzeichnis classes befinden, in dem sich kompilierte Java-Klassen sowie weitere Ressourcen befinden können. Das Verzeichnis wird vom Server automatisch dem Classpath hinzugefügt, sodass diese Klassen immer gefunden werden. Es ist ein akzeptabler Platz, um z.B. Property-Files unterzubringen, die über den Class-Loader geladen werden sollen.

  • Unterhalb von WEB-INF kann sich ein Verzeichnis lib befinden. Alle Java-Archive (JAR-Dateien) in diesem Verzeichnis werden ebenfalls automatisch dem Classpath hinzugefügt, ihr Inhalt wird vom Server gefunden. Andere Dateien werden in diesem Verzeichnis nicht gefunden.

  • Unterhalb von WEB-INF kann sich auch ein Verzeichnis tmp befinden, das der Server für temporäre Dateien nutzt.

Unsere Webapplikation ist gegenwärtig deployed durch eine einfache xml-DateiCATALINA_HOME/webapps/jspkurs.xml, die auf elegante Weise Tomcat anweist, das Basisverzeichnis der Webapplikation woanders zu suchen:


Code: Deployment durch xml-Datei: jspkurs.xml 
<Context path="/jspkurs" docBase="c:/jspkurs/"
        debug="1" privileged="true" reloadable="true"/>

Dies ist ein spezielles Feature von Tomcat, das andere Server nicht unbedingt in der Form mitmachen. Wir haben das so eingerichtet, um nicht in Tomcats Verzeichnissen unsere Applikation entwickeln zu müssen.

Wenn wir nun unsere Applikation fertiggestellt und leidlich getestet haben (und sie funktioniert), wollen wir sie ja auch auf den Präsentations- oder Liveserver bringen. Wir könnten dazu einfach alles nach CATALINA_HOME/webapps/kurs kopieren und könnten dann den ganzen Kurs unter localhost/kurs aufrufen.

Wir wollen einen etwas professioneller aussehenden Weg wählen und ein sogenanntes Web-Archive  (WAR) erstellen. Eine war-Dateien ist so ähnlich wie die jar-Datei, die wir kennengelernt haben, und sie enthält in gezippter Form unsere gesamte Webapplikation.

Das JDK bringt ein Tool mit, das diese Dateien herstellt. Öffnen Sie bitte eine Konsole und wechseln Sie in das Basisverzeichnis unserer Webapplikation (c:\jspkurs\web). Das Tool heißt jar, bitte geben Sie ein:

    jar -cf kurs.war .

Einzelheiten zum jar-Tool in der JDK-Dokumentation unter Tools/Basic.

Den Punkt am Ende nicht vergessen. Sie erhalten nun eine Datei kurs.war, die Sie nach CATALINA_HOME/webapps kopieren können. Tomcat merkt, dass dort etwas passiert ist, entpackt diese Datei und stellt ihren Inhalt unter http://localhost/kurs zur Verfügung.

Das Schöne daran ist, dass Sie diese WAR-Datei unverändert auf jeden Server, der die J2EE Spezifikation erfüllt, deployen können, indem Sie sie einfach in das entsprechende webapp-Verzeichnis kopieren.  Allerdings sind nicht alle Server so konfiguriert, dass sie das Archiv automatisch bemerken und entpacken. In Produktionsumgebungen muss hier vielfach ein Installationsservlet aufgerufen oder der Server neu gestartet werden.

 

« Bibliotheken nutzen
Webapplikation
Ausblick: Wie geht's weiter? »
Show/Hide Footer Actions

Kommentare:

Sie müssen angemeldet sein um eine Nachricht zu erstellen. Anmelden »
© 2012 Java 1. Alle Rechte vorbehalten.
Anmelden
concrete5 - open source CMS
Theme by Site5 / Mnkras.