Slyh: Servlet - Problem mit Pfadangaben

Beitrag lesen

Hallo,

bezugnehmend auf deine vorherige Antwort auf mein Posting:
Du hast zu viel Zeit! :-)
Ich werd das aber mal nachvollziehen, was du schreibst, sobald ich ein
wenig Zeit habe. Insbesondere auch um das Verhalten von Tomcat 5 zu
ermitteln.
(Ich hoffe, das der Thread noch nicht vorher ins Archiv wandert.)

Ich kann nur sagen, daß ich mit Tomcat 4 (vielleicht war's auch 5)
verschiedentlich Probleme hatte, wenn ich nicht sehr genau konfiguriert
hatte, was wo liegt usw.

Ja. Allerding ist seit Tomcat 4 diese "/servlet"-Geschichte aus
Sicherheitsgründen in der web.xml auskommentiert.
Kennst Du die Hintergründe genauer?

Nicht wirklich. Es gab wohl mal eine Sicherheitslücke dazu. Siehe
http://jakarta.apache.org/tomcat/faq/misc.html#invoker und
auch die nachfolgende Frage. Es ist einfach schlechter Stil und
birgt gewisse Risiken, den Invoker per Wildcard zu verwenden.

Lokal sehe ich zu Testzwecken aber kein Problem.

Nachtrag zu meiner ersten Antwort:
Das "Standardverzeichnis" für Servlets in Tomcat ist der Default-Classpath einer WebApplikation.

Meinst du das "Default-Package"?

Ohne ein explizites Servlet-Mapping in der <web.xml> müssen Servlets mit "servlet/VollQualifizierterKlassenName" in der URL angesprochen werden.

Ja. Das hätte ich noch explizit erwähnen sollen. Wenn man sowas wie
"servlet/MeineKlasse" über den Invoker starten lassen möchte, so muß
die Klasse "MeineKlasse" im Default-Package (also keinem Package)
liegen.
Liegt die Klasse in einem Package, sähe der Aufruf ungefähr so aus:
"servlet/de.meinpackage.MeineKlasse".

Oder meintest du was anderes?

Gruß
Slyh