JSTL не работает на весну 5 - PullRequest
0 голосов
/ 16 мая 2018

Я создал простой пример Spring MVC, и у меня возникают проблемы с переводом атрибутов модели в файл jsp. Вот код:

открытый класс WebMvcConfig реализует WebMvcConfigurer

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = { "my.package.path"})
public class WebMvcConfig implements WebMvcConfigurer {

  @Bean
  public InternalResourceViewResolver resolver() {
  InternalResourceViewResolver resolver = new InternalResourceViewResolver();
  resolver.setViewClass(JstlView.class);
  resolver.setExposeContextBeansAsAttributes(true);
  resolver.setExposePathVariables(true);
  resolver.setPrefix("/WEB-INF/jsp/");
  resolver.setSuffix(".jsp");
  return resolver;
}
}

HomeController

@GetMapping("/")
public String userForm(Locale locale, Model model) {
    model.addAttribute("users", "test");
    return "hometest";
}

hometest.jsp

<!doctype html>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>

<c:out value="${users}"></c:out>

Когда я запускаю приложение, оно работает нормально, файл home.jsp открывается нормально, но он просто отображает

${users}

вместо

test

Если я закомментирую метод InternalResourceViewResolver resolver (), приложение не запустится, не сможет найти страницы для отображения, поэтому это означает, что этот метод выполняется ... но почему атрибут модели не передается в файл JSP?

...