Ich weiß, dass es viele Beiträge hier mit dem gleichen Problem gibt, aber keine von ihnen scheint mir zu helfen, so wird dies wahrscheinlich ein Duplikat sein.Spring mvc @RequestMapping auf Klassenebene und Methodenebene 404 Status
Im Erstellen einer Federmvc-Anwendung mit Maven, ich habe nur einen Controller mit einer Methode. Wenn ich die Annotation der Anforderungszuordnung nur auf Klassenebene setze, funktioniert die Anwendung gut, aber wenn ich sie auf die Klassenebene und die Methodenebene bringe, sende ich eine Anfrage wie diese:
localhost: 8080/myapplication/planification/projet
i erhalten Fehler 404: HTTP-Status 404 - /myapplication/planification/WEB-INF/pages/test.jsp
hier ist mein Controller
@Controller
@RequestMapping("/planification")
public class PlanificationController {
@RequestMapping("/projet")
public ModelAndView projets (ModelAndView m){
m.addObject("projets", "All projects");
m.setViewName("test");
return m;
}
}
mvc-Dispatcher-servlet.xml
<beans>
<context:component-scan base-package="com.smit"/>
<mvc:annotation-driven/>
<!-- **** VIEW RESOLVER BEAN **** -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>WEB-INF/pages/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
</beans>
web.xml
<web-app>
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet- class>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/mvc-dispatcher-servlet.xml
</param-value>
</context-param>
</web-app>
das hat nicht funktioniert:/ –
Slash sollte es auf Klassenebene sein, aber nicht auf der Methode – arseniyandru
Oh nein, auch WEB-INF sollte/vor haben! – arseniyandru