Sommersemester 2005 FernUniversität Hagen
Fachbereich Informatik
 Kurs 1794 - Software Engineering II - Methodische Entwicklung von Benutzungsschnittstellen für Webapplikationen
 Lehrgebiet Software Engineering, Prof. Dr. Six

Einbinden von Struts in die eigene Webapplikation

1. Möglichkeit

Die einfachste Möglichkeit, Struts in die eigene Webapplikation einzubinden, besteht darin, hier ein vom Lehrgebiet bereitgestelltes, leeres Struts-Projekt herunterzuladen, das alle benötigten Bibliotheken und Konfigurationsdateien enthält. Dieses leere Projekt können Sie als Basis für Ihr Projekt nehmen, indem Sie einfach ihre selbstgeschriebenen Klassen und JSPs hinzufügen. Die Struktur des leeren Projekts entspricht der in "Projektstruktur" beschriebenen. Sie müssen lediglich nur noch die folgende Zeile in der Datei build.xml an Ihren Projektnamen anpassen:

<project default="help" basedir="." name="KE3.StrutsBlank">

2. Möglichkeit

Eine andere Möglichkeit besteht darin, das von Struts mitgelieferte leere Projekt zu benutzen. Wie das geht, wird im Folgenden in drei Schritten beschrieben.

Erster Schritt

Zunächst lädt man sich Struts 1.2.7 (struts-1.2.7.zip) von der Apache Software Foundation herunter und entpackt anschließend die zip-Datei in ein frei wählbares Verzeichnis. Es entsteht unter anderem das Unterverzeichnis webapps. In diesem Verzeichnis befindet sich die Datei struts-blank.war, die eine vorkonfigurierte leere Struts-Webapplikation enthält. Diese Datei entpackt man ebenfalls in ein beliebiges Verzeichnis.

Zweiter Schritt

Die leere Struts-Webapplikation enthält noch keine JSTL- und EL-Unterstützung. Zum einen fehlen die Bibliotheken standard.jar und jstl.jar, zum anderen fehlt im Deployment-Descriptor web.xml die entsprechende Angabe zur Aktivierung der EL. Wie man die fehlenden Bibliotheken einbindet kann hier nachgelesen werden. Um die EL zu aktivieren, muss der Deployment-Descriptor so angepasst werden, dass der Anfang wie im folgenden Listing aussieht.

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.4" 
         xmlns="http://java.sun.com/xml/ns/j2ee" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
         http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

Dritter Schritt

Um eigene Klassen hinzuzufügen, z.B. konkrete Actions, muss der classpath angepasst werden, so dass auch beim Kompilieren Struts eingebunden wird. Dazu muss die Bibliothek struts.jar in den classpath aufgenommen werden.

Angenommen das Verzeichnis der Tomcat-Installation lautet %CATALINA_HOME% und das Verzeichnis der zu entwickelnden Webapplikation %WEB_HOME%. Der Befehl zum Kompilieren der eigenen Webapplikation könnte dann z.B. folgendes Aussehen besitzen:

javac –d %WEB_HOME%\WEB-INF\classes –classpath %CATALINA_HOME%\common\lib\servlet-api.jar;
      %WEB_HOME%\WEB-INF\lib\jstl.jar;%WEB_HOME%\WEB-INF\standard.jar;
      %WEB_HOME%\WEB-INF\lib\struts.jar %WEB_HOME%\WEB-INF\src\*.java

(Achtung: Es findet kein Zeilenumbruch statt. Hier ist nur wegen der besseren Lesbarkeit ein Zeilenumbruch eingefügt.)

Bei der Benutzung einer IDE (z.B. NetBeans oder Eclipse) muss in den meisten Fällen die obige Zeile zum Kompilieren nicht selbst erstellt werden, sondern wird automatisch von der IDE erzeugt. Dazu gibt man lediglich alle Bibliotheken an, die mit in den classpath aufgenommen werden sollen. Dieser Vorgang sieht von IDE zu IDE unterschiedlich aus und wird daher hier nicht behandelt.


Copyright © 1997-2005 FernUniversität in Hagen