2017-03-29 3 views
0

Und ich habe Probleme mit dem Ausführen von Spring-Projekt auf Tomcat in Eclipse (Mars).Eclipse lädt Web.xml falsch zu Tomcat

Mein Projekt ist mit Maven erstellt und basiert auf Profilen, die web.xml-Datei wird gebaut. Also hier ist, wie dev Profil wie folgt definiert ist:

<profile> 
    <id>dev</id> 
    ... 
    <properties> 
    ... 
    <welcomePage>devIndexPage.xhtml</welcomePage> 
</properties> 

Dann in der web.xml ich mit einem Platzhalter folgende Definition haben:

<welcome-file-list> 
    <welcome-file>${welcomePage}</welcome-file> 
</welcome-file-list> 

Nach Erstellen eines Projekts, ich m Öffnen von WAR-Datei und kann sehen, dass web.xml hat eine Datei Konfiguration wie (Platzhalter ersetzt durch Wert des dev-Profils):

<welcome-file-list> 
    <welcome-file>devIndexPage.xhtml</welcome-file> 
</welcome-file-list> 

Bis jetzt ist alles in Ordnung, aber wenn ich in eclipse das Projekt auf tomcat7 starte, sieht der Wert der Willkommensdatei $ {welcomePage} aus. Mit anderen Worten, Eclipse + Tomcat lädt web.xml, ohne Platzhalter zu ersetzen.

Ich bin sicher, dass meine Konfiguration funktionieren sollte, weil ich es manuell auf Tomcat ohne Verwendung von Eclipse erfolgreich ausführen. Also ich denke, dass Eclipse kopiert falsch in wtpwebapps Ordner.

Könnten Sie mir bitte Vorschläge geben, was ich auf Eclipse konfigurieren sollte, um web.xml korrekt zu laden?

Außerdem bin ich die Bereitstellung tomcat Übersicht:

enter image description here

bearbeiten Also habe ich bereits darauf hin, dass web.xml, die workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\myapp kopiert wird wie folgt <welcome-file>${welcomePage}</welcome-file> hat. Also wurde eine Idee, warum Platzhalter nicht durch Web-App ersetzt wurde, in diesem Ordner bereitgestellt?

+0

Bitte posten Sie das Plugin von pom.xml, welches den Platzhalter ersetzt. –

Antwort

1

Das Ersetzen von Ausdrücken ist ein Maven-Feature, unabhängig vom verwendeten ide. Versuchen Sie mvn tomcat: run statt eclipse.