JSTL标记中的Spring消息

zma*_*anc 7 spring jsp jstl spring-mvc

根据3年前的这篇文章,在jstl标签中显示spring消息的唯一方法是将其包装在<c:set var="someVar">"工作"中,但它看起来很不理想.

快进3年,这仍然是解决这个问题的唯一方法吗?

这是我的代码

工作,但不是"理想"

<c:set var="closeMessage">
    <spring:message code='lman.ilr.closeItemDetail'/>
</c:set>
<dsg:sidePanelContent closePanelText="${closeMessage}">
Run Code Online (Sandbox Code Playgroud)

不起作用,返回一串字符串 <spring:message code='lman.ilr.closeItemDetail'/>

<dsg:sidePanelContent closePanelText="<spring:message code='lman.ilr.closeItemDetail'/>">
Run Code Online (Sandbox Code Playgroud)

JB *_*zet 9

spring消息标记就像fmt:message有一个var属性,可以用来存储消息而不是显示消息.

阅读文档总是有帮助.

此外,您的错误消息可能来自于要在JSP顶部声明spring taglib的.


Sub*_*lil 5

以供参考

<c:choose>
  <c:when test="${serviceVO.id eq 0}"> 
     <spring:message code="label.service.createservice" var="buttonName"/> 
  </c:when> 
  <c:otherwise>
    <spring:message code="label.updateservice" var="buttonName"/> 
  </c:otherwise>
</c:choose>

<c:out value="${buttonName}"> //Prints the desired value...
Run Code Online (Sandbox Code Playgroud)