Wo ist Spring MVC Kontext-Pfad eingestellt?
Ich bin mir nicht sicher, wie der Kontext-Pfad eingestellt ist.
Wenn ich benennen meine .war file
im tomcat auf autodeploy
die web-Seite geht localhost:8080/newDirectory
wie erwartet, aber aus irgendeinem Grund überall dort, wo ein Ruf zu pageContext.request.contextPath
in einer Spring-basierten Seite, die es immer noch gibt die alte Kontext-Pfad.
Habe ich versucht das überschreiben der Kontext-Pfad durch festlegen:
<context path="/newDirectory" docBase="appName" override="true"></context>
in server.xml
aber es funktioniert nicht.
Meine Frage ist, wo kommt der Frühling Lesen, den Kontext-Pfad aus? Ich verwendet Maven und ich habe zu sehen, es gibt eine
<appContext>/${project.artifactId}</appContext>
in der pom.xml
wird, bedeutet dies, ich brauche das umbenennen der artifactId zu newDirectory ?
Habe ich auch schon versucht, hinzuzufügen, dass <context path="/newDirectory"...> in /META-INF/context.xml
(die ich jetzt kenne werden sowieso ignoriert, aufgrund meiner server.xml
änderungen).
Dank im Voraus für Ihre Antwort.
- Für mich nur die änderung oldWebApp.Krieg newWebApp.Krieg gearbeitet
Du musst angemeldet sein, um einen Kommentar abzugeben.
Jeder PageRequest wird, erhalten Sie die aktuellen HttpServletRequest Objekt und context-Pfad der aktuellen Anfrage und hängen Sie Ihre .jsp (das wird funktionieren, auch wenn der Kontext-Pfad dieser Ressource zugegriffen wird, bei änderungen).
Eg,
wenn Sie die war-Datei als "MyCompany".Krieg und eine Seite mit ${pageContext.Anfrage.contextPath}/MyJspPage.jsp.
Angenommen, wenn Sie Ihre war-Datei als OurCompany.Krieg,
Bedeutet es, Kontext-Pfad wird automatisch ändern, um den Namen der Applikation(war-Datei-name) mit änderungen.
In Ihrem Fall,nach der Umbenennung war-Datei Namen mit newDirectory,Ihren webserver bereitstellen newDirectory Anwendung aber noch newDirectory Anwendung existieren in den web-server.Ich denke, Sie sollten löschen Sie die alte Anwendung aus dem webapp und überprüfen Sie dann durch das laden Sie Ihre newDirectory Anwendung.
Es nicht, hängt davon ab Frühling vielleicht sind Sie mit einem maven-plugin zu bauen, Ihr Krieg, der liest den appContext Eigenschaft. Sie können nachlesen, definig ServletContext in diese thread.