'Web Application' (Servlet Spec. 2.2)

Ich bin in der Firma momentan dabei unsere Anwendung, die seit Anfang auf IIS / IBM Websphere Servlet Engine basiert, auf BEA Weblogic zu testen. Neben anderen Problemen (siehe zwei Threads weiter unten) ist mir nun auch das Konzept der Web Applications aufgefallen.

Bisher haben wir da ein wenig ein übles Installationssystem so wie ich das sehe :wink:

Wir schmeissen einen Hauffen .zip’s, .jar’s und .class’es (die sich in der entpsrechenden verzeichnisstruktur befinden) alle ins /classes Verzeichnis von Websphere

Wir schmeissen unsere Anwendung (Beans, Servlets und andere Klassen) in einem .jar gepackt zusammen mit ein paar config-Dateien in das Verzeichnis /servlets

Und wir haben noch ein paar dll’s die in ein verzeichnis /plugins/nt kommen (wegen nativen Klassen)

Nun möchte ich das auf Weblogic alles haben, am besten konform der Web Applications Spez.
Nun frage ich mich wohin mit dem ganzen Gerümpel :wink:
So wie ich das sehe beachtet der Classpath nur die .jar’s wenn ich das alles nach /lib schmeisse… was mache ich mit meinen .zip’s? Muss ich die umbenennen? Und die ungepackten Klassen, muss ich die auch in ein .jar einpacken?

Was gehört überhaupt ins Verzeichnis /lib und was nach /classes?
Muss ich alle Servlets in der web.xml unbedingt registrieren? Bisher haben wir da glaub ein Path-Mapping verwendet und einfach verlinkt auf

http://server/servlets/

Wäre nett wenn sich einer der sich damit auskennt mir sagen könnte wohin ich den ganzen Krempel packen muss … ich dreh schon schier durch :wink:

Servus,

Nun möchte ich das auf Weblogic alles haben, am besten konform
der Web Applications Spez.
Nun frage ich mich wohin mit dem ganzen Gerümpel :wink:
So wie ich das sehe beachtet der Classpath nur die .jar’s wenn
ich das alles nach /lib schmeisse… was mache ich mit meinen
.zip’s? Muss ich die umbenennen? Und die ungepackten Klassen,
muss ich die auch in ein .jar einpacken?

Was gehört überhaupt ins Verzeichnis /lib und was nach
/classes?

Ich habe zwar weiter unten das lib auf den Tomcat bezogen, der WebLogic hatte jedoch, zumindest in der Version 5.1, ebenfalls den lib-Pfad nicht beachtet.

Version 6 muss ich hierzu noch testen.

Muss ich alle Servlets in der web.xml unbedingt registrieren?
Bisher haben wir da glaub ein Path-Mapping verwendet und
einfach verlinkt auf

http://server/servlets/

Keine Ahnung. Ich habe eigentlich immer ein Path-Mapping verwendet.

Wäre nett wenn sich einer der sich damit auskennt mir sagen
könnte wohin ich den ganzen Krempel packen muss … ich dreh
schon schier durch :wink:

Dirk

Ich habe zwar weiter unten das lib auf den Tomcat bezogen, der
WebLogic hatte jedoch, zumindest in der Version 5.1, ebenfalls
den lib-Pfad nicht beachtet.

Also beim .jsp’s compilen sehe ich im logfile den Classpath und da hängen die ganzen .jar’s aus lib schon drin

Nun frage ich mich wohin mit dem ganzen Gerümpel :wink:
So wie ich das sehe beachtet der Classpath nur die .jar’s wenn
ich das alles nach /lib schmeisse… was mache ich mit meinen
.zip’s? Muss ich die umbenennen? Und die ungepackten Klassen,
muss ich die auch in ein .jar einpacken?

Was gehört überhaupt ins Verzeichnis /lib und was nach
/classes?

Die Java-Classes gehören, falls sie als einzelne Dateien vorliegen, in das WEB-INF/classes Verzeichnis, und zwar unter dem Pfad, der ihre Package kennzeichnet. Sonst gehört nichts nach WEB-INF/classes.
In WEB-INF/lib gehören JAR-Archive, die Klassen enthalten. In den JARs muss dabei wiederum eine den Packages der beinhalteten Klassen entsprechende Verzeichnisstruktur existieren und die Klassen müssen an den korrekten Orten abgelegt sein. Wird beim Erstellen der JARs aber automatisch gemacht.

Alle anderen Dateien können irgendwo in der WebApp abgelegt werden. Bei den Zip-Files hängt es vom Inhalt ab, was damit geschehen soll.

Grüsse

Lars