복붙노트

[SPRING] JSTL c : 변수 값 표시 안 함

SPRING

JSTL c : 변수 값 표시 안 함

나는 봄에 관한 튜토리얼을 따르고 있는데, 요청을 렌더링하는 JSP 내에서 인쇄하려면 컨트롤러에 변수를 설정해야한다. 코드는 다음과 같습니다.

@Controller
public class HelloController {

    @RequestMapping(value="/hello.htm")
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse  response) throws ServletException, IOException {
        String now = (new Date()).toString();
        return new ModelAndView("WEB-INF/views/hello.jsp", "now", now);
    }
}

그런 다음 hello.jsp 코드는 다음과 같습니다.

<%@ page session="true"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
    <body>
        <p>Greetings, it is now <c:out value="${now}" /></p>
    </body>
</html>

나는 이것을 보여주는 html을 얻을 것으로 예상된다.

Greetings, it is now Mon Fri Dec 06 00:39:35 CET 2013

하지만 내가 얻는 것은 :

Greetings, it is now ${now}

나는 모든 것을 두 번 (또는 그 이상!) 확인했지만 튜토리얼에서 말한대로 모든 것이 보이지만 뭔가 빠져 있어야합니다.

내 코드에 무슨 문제가 있습니까?

해결법

  1. ==============================

    1.이것은 E xpression L anguage 문제입니다. $ {}이 (가) 해결되지 않았습니다. 이것은 여러 가지 이유로 발생할 수 있습니다. 하나는, 그리고 가장 가능성이 높습니다, 당신의 web.xml이 Servlet 2.3 이하를 선언하고 있다는 것입니다. 2.4+를 지정해야합니다. 이제 분명히 서블릿 컨테이너가 더 높은 버전을 지원해야합니다.

    이것은 E xpression L anguage 문제입니다. $ {}이 (가) 해결되지 않았습니다. 이것은 여러 가지 이유로 발생할 수 있습니다. 하나는, 그리고 가장 가능성이 높습니다, 당신의 web.xml이 Servlet 2.3 이하를 선언하고 있다는 것입니다. 2.4+를 지정해야합니다. 이제 분명히 서블릿 컨테이너가 더 높은 버전을 지원해야합니다.

  2. ==============================

    2.이것을 바꿉니다 - 라이브러리가 나쁜 패드 :

    이것을 바꿉니다 - 라이브러리가 나쁜 패드 :

    <!--  %@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>-->
    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
    
  3. from https://stackoverflow.com/questions/20413260/jstl-cout-not-showing-the-variables-value by cc-by-sa and MIT license