Estoy tratando de trabajar con Spring mvc. Mi problema es que ninguna asignación de solicitud funciona en mi controlador, solo el enlace de mi página de inicio: "/" funciona.
@Controller
public class HelloWoldController {
@RequestMapping("/")
public String showPage() {
return "main";
}
@RequestMapping("/showForm")
public String showForm() {
return "form";
}
}
mi archivo web.xml es:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>springMVC</display-name>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-mvc-demo-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
y mi spring-mvc-demo-servlet.xml es:
<?xml version="1.0" encoding="ISO-8859-1"?>
<beans
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans">
<context:component-scan
base-package="com.kaygi22.springmvc" />
<mvc:annotation-driven />
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property value="/WEB-INF/view/" name="prefix" />
<property value=".jsp" name="suffix" />
</bean>
Cada vez que intento acceder al enlace de showForm, recibo este mensaje:
09 de mayo de 2019 4:55:42 PM org.springframework.web.servlet.DispatcherServlet noHandlerFound ADVERTENCIA: No hay mapeo para GET / springMVC / showForm
3 respuestas
No sé cómo funciona, pero cambié mi proyecto a Maven War Project en lugar de Dynamic web app, y el problema se resolvió. Si alguien puede dar alguna explicación?
Intente cambiar el método a continuación agregando valor para la url y el tipo de método.
@RequestMapping(value="/showForm", method=RequestMethod.GET)
Me enfrenté al mismo problema, hice lo siguiente: limpiar su proyecto: en eclipse, vaya a Proyecto -> limpiar y haga clic derecho en el proyecto y actualícelo.
Nuevas preguntas
spring
Spring Framework es un marco de código abierto para el desarrollo de aplicaciones en la plataforma Java. En esencia, es un soporte completo para arquitecturas basadas en componentes, y actualmente cuenta con más de veinte módulos altamente integrados.