¿Cómo obtener acceso a WEB-INF/views/some.jsp? primavera mvc

¿Cómo obtener acceso a WEB-INF/views/some.jsp? primavera mvc

Implementé con éxito mi aplicación web en el host local de Tomcat. Mi aplicación tiene 2 páginas: localhost:8080/spring-mvc y localhost:8080/home. La primera página tiene un enlace a la segunda. Cuando inicio mi aplicación, abre correctamente la primera página, pero cuando sigo el enlace a la segunda página aparece el error:

Estado HTTP 404: no encontrado.

Parece que no hay acceso a la carpeta WEB-INF/view. ¿Puedes ayudarme a resolver este problema?

Estructura del proyecto

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

aplicaciónContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

</beans>

despachador-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context-3.0.xsd
       http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc.xsd">

        <context:component-scan base-package="com.stoliarenko"/>

        <mvc:annotation-driven/>
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
              <property name="prefix" value="/WEB-INF/views/"/>
              <property name="suffix" value=".jsp"/>
          </bean>
</beans>

índice.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>Index Page</title>
  </head>
  <body>
  <a href="/home">Go To Home Page!!</a>
  </body>
</html>

inicio.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>${pageTitle}</title>
</head>
<body>
${message}
</body>
</html>

InicioController.java

package com.stoliarenko;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class HomeController {

    @RequestMapping(value = "/home")
    public ModelAndView home(){
        ModelAndView modelAndView = new ModelAndView("home");
        modelAndView.addObject("pageTitle", "Home Page");
        modelAndView.addObject("message", "Hi, Welcome! This is HomePage!");
        return modelAndView;
    }
}

Respuesta1

Causa raíz La clase requerida para resolver la ruta JSP está disponible en el paquete Tomcat Jasper y la dependencia no se agrega en pom.xml. Por lo tanto, la aplicación Spring Boot no puede resolver la ruta jsp.

Solución Las clases dependientes están disponibles en Tomcat Jasper.

este enlace puede ser útil http://www.codersdesks.com/spring-boot-path-with-web-inf-or-meta-inf/

información relacionada