我无法弄清楚设置<c:set>另一个JSP标记的结果的值.
这是我的代码:
<c:set var="desc" value="<c:choose>
<c:when test="${model.totalHits < 200}">${model.totalHits}</c:when>
<c:otherwise>${model.results.size()}</c:otherwise></c:choose>
positions at
<c:forEach items="${model.metaCompanies}" var='item' varStatus='status'>
${item} including ${model.metaDescsingleCompany}
</c:forEach>
related to ${model.querymetacompany}."/>
Run Code Online (Sandbox Code Playgroud)
获得此例外:
org.apache.jasper.JasperException: Unterminated <c:set tag
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么 ?有没有其他方法可以实现这种情况?
您正在尝试将JSTL标记放在JSTL标记的属性中.
这没有任何意义.
您应该将JSTL标记放在JSTL标记的正文中.同样如此<c:set>.评估结果最终将成为价值<c:set>.
<c:set var="desc"><c:choose>...</c:choose><c:forEach>...</c:forEach>...</c:set>
Run Code Online (Sandbox Code Playgroud)