Die Anwendung wird auf Tomcat6 im Kontextpfad "/ environame/appname" implementiert.Wie definiere ich den Kontextpfad der Anwendung in Tomcat 6?
<Context
...
path="/environame/appname"
...
</Context>
Aber ich kann meine Anwendung mit folgenden URL nicht zugreifen:
Ich habe Unterstrich anstelle von Schrägstrich zwischen "environame" und "appname".
Tomcat 5 funktioniert anders.
Bei Tomcat 5 wird es nicht in der URL unterstreichen werden: meine Anwendung für den Zugriff auf mit Slash statt Strich
Was soll ich in der Konfiguration meiner Anwendung oder Tomcat 6 ändern zwischen "environame" und "appname"?
UPDATE:
Pfad der Kontextpfad dieser Web-Anwendung, die vor dem Beginn jeder Anforderung angepasst ist die entsprechende URI Webanwendung zur Verarbeitung auszuwählen. Alle Kontextpfade innerhalb eines bestimmten Hosts müssen eindeutig sein. Wenn Sie einen Kontextpfad einer leeren Zeichenfolge ("") angeben, definieren Sie die Standardwebanwendung für diesen Host, der alle Anforderungen verarbeitet, die nicht anderen Kontexten zugewiesen sind.
Der Wert dieses Feld darf nicht außer eingestellt werden, wenn statisch einen Kontext in server.xml definieren, da es entweder für die XML-Kontext-Datei oder die docBase verwendet, um aus den Dateinamen abgeleitet werden.
http://tomcat.apache.org/tomcat-5.5-doc/config/context.html
Wir speichern Kontext XML-Datei auf $ CATALINA_HOME/conf/Catalina/localhost/environame_appname.xml Datei. Tomcat 5.0.28 verwendet das Pfadattribut des Context-Elements.
Tomcat 6 verwendet den Namen der Kontext-XML-Datei.
Ist es möglich, die Konfiguration zu ändern, um das Pfadattribut anstelle des Namens der xontext XML-Datei zu verwenden?
ANTWORT:
Es ist ein Fehler bug#46713
Wenn ein Pfad Attribut innerhalb des Kontext-Tag im Kontext xml der gesetzt ist es ignoriert. Stattdessen wird der Pfad auf "/" + gesetzt.Während es schön ist, dass sogar Pfade mit '/' können in den Dateinamen codiert werden durch Ersetzen von '/' mit '#' ist es sehr verwirrend, dass ein vorhandenes Pfadattribut einfach ignoriert wird.
Also, ich muss nur meine Kontext-XML-Datei in environame # appname.xml umbenennen.
Ich habe festgestellt, dass Tomcat 6 den Dateinamen der Kontext-XML-Datei anstelle des Werts des Pfadattributs des Context-Elements verwendet. Wir speichern die Konfiguration von Context in der Datei environame_appname.xml. –
Großartig. So funktioniert es immer noch. Es ist derselbe Mechanismus, der den Anwendungsnamen/Pfad aus dem Namen der Kontextdefinitionsdatei oder aus dem Namen der War-Datei definiert. – magomi
Ich habe die Antwort gefunden. Bitte sehen Sie mein Update. –