首先,我有一個Spring 3.0控制器,其方法類似於以下內容。如何將對象從Spring 3.0控制器傳遞到JSP視圖並使用JSTL進行測試
我通過視圖名爲「消息」的對象,並希望通過視圖打印該消息,如果它已由「doStuff」方法設置。
@RequestMapping("/index")
public ModelAndView doStuff() {
ModelAndView mav = new ModelAndView();
Map<String, String> message = new HashMap<String, String>();
message.put("message", "Hello World");
mav.setViewName("pages/myView");
mav.addObject("message", message);
return mav;
}
的觀點是類似於以下,
<%@ page session="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
<html>
<head>
<title>Test</title>
</head>
<body>
<c:if test="${message.message} != null">
<div class="msg">test1: ${message.message}</div>
</c:if>
<c:if test="${message.message} != ''">
<div class="msg">test2: ${message.message}</div>
</c:if>
<c:if test="${message.message}">
<div class="msg">test3: ${message.message}</div>
</c:if>
<c:if test="not empty ${message.message}">
<div class="msg">test4: ${message.message}</div>
</c:if>
<div class="msg">test5: ${message.message}</div>
</body>
</html>
到目前爲止,只有「TEST5」正在打印的消息,但我只想要打印的消息,如果「$ {} message.message 「不爲空。
我都試過「http://java.sun.com/jstl/core_rt」和「http://java.sun.com/jstl/core」,但似乎無法得到「< C:如果/ >」語句才能正常工作。
有沒有人有任何想法,我做錯了什麼或更好的方式來做到這一點?
感謝
哦,多謝 - 這就是它了。 – wsams 2010-02-15 15:40:53
@ user272159:你只有**真的需要擺脫棄用的URI和任何舊的JSTL JAR。另請參閱我的答案。 – BalusC 2010-02-15 20:49:04