Ich habe eine Anwendung mit Spring mit Eclipse IDE gebaut. Wenn ich das Projekt von der Eclipse-IDE aus starte, ist alles in Ordnung, aber wenn ich das Maven-Projekt als War-Datei verpacke und für einen separaten Tomcat bereitstelle, habe ich folgendes Problem
The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.
Dies ist ein Konfigurationsausschnitt aus meiner xml-Datei
<!-- View Resolver -->
<beans:bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/pages/" />
<beans:property name="suffix" value=".jsp" />
</beans:bean>
Ich versuche, auf diesen Controller zuzugreifen
@RequestMapping(value = {"/welcome", "/"})
public String defaultPage() {
return "Web Service data successfuly consumed";
}
Hat jemand eine Idee, warum dies beim Einsatz im Tomcat fehlschlägt?
I' ve erhielt den gleichen Fehler bei der Arbeit in einer Spring Boot-Anwendung, weil, wenn als Spring Boot ausgeführt, it' s einfach, localhost:8080/hello/World
zu tun, aber wenn Sie' haben das Artefakt gebaut und an Tomcat bereitgestellt, dann müssen Sie auf mit localhost:8080/<artifactName>/hello/World
wechseln
Beim Versuch, ein Servlet in Eclipse auszuführen (Rechtsklick + "Run on Server"), bin ich auf genau das gleiche Problem gestoßen: "HTTP Status: 404 / Beschreibung: Der Ursprungsserver hat keine aktuelle Darstellung für die Zielressource gefunden oder ist nicht bereit, die Existenz einer solchen offenzulegen" Das Hinzufügen einer index.html hat nicht geholfen, auch nicht das Ändern verschiedener Einstellungen des Tomcat.
Schließlich habe ich das Problem an einer unerwarteten Stelle gefunden: In Eclipse war die Option "Build automatically" nicht gesetzt. Somit wurde das Servlet nicht kompiliert, und es wurde keine Datei "myServlet.class" auf dem Server bereitgestellt (in meinem Fall im Pfad
Meine Umgebung: Eclipse Neon.3 Release 4.6.3, Tomcat-Version 8.5.14., OS Linux Mint 18.1.