无法将 JSP 标记的结果分配为 c:set 的值
Not able to assign result of JSP tag as value of c:set
我无法用另一个 JSP 标签的结果设置 <c:set>
的值。
这是我的代码:
<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}."/>
获取此异常:
org.apache.jasper.JasperException: Unterminated <c:set tag
我做错了什么吗?有没有其他方法可以实现这种情况?
您正在尝试将 JSTL 标记放入 JSTL 标记的属性中。
这没有任何意义。
您应该将 JSTL 标签放在 JSTL 标签的 body 内。 <c:set>
也是如此。评估结果最终会成为<c:set>
.
的值
<c:set var="desc"><c:choose>...</c:choose><c:forEach>...</c:forEach>...</c:set>
正如 BalusC 所提到的,属性中不应该有标签。
在这里您可以找到您的代码也可能看起来像:
<c:set var="totalHits" value="${model.results.size()}"/>
<c:if test="${model.totalHits < 200}">
<c:set var="totalHits" value="${model.totalHits}"/>
</c:if>
<c:set var="items" value=""/>
<c:forEach items="${model.metaCompanies}" var='item' varStatus='status'>
<c:set var="items" value="${items} ${item} including ${model.metaDescsingleCompany}"/>
</c:forEach>
<c:set var="desc" value="${totalHits} positions at ${items} related to ${model.querymetacompany}."/>
希望我理解你的意图!
我无法用另一个 JSP 标签的结果设置 <c:set>
的值。
这是我的代码:
<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}."/>
获取此异常:
org.apache.jasper.JasperException: Unterminated <c:set tag
我做错了什么吗?有没有其他方法可以实现这种情况?
您正在尝试将 JSTL 标记放入 JSTL 标记的属性中。
这没有任何意义。
您应该将 JSTL 标签放在 JSTL 标签的 body 内。 <c:set>
也是如此。评估结果最终会成为<c:set>
.
<c:set var="desc"><c:choose>...</c:choose><c:forEach>...</c:forEach>...</c:set>
正如 BalusC 所提到的,属性中不应该有标签。
在这里您可以找到您的代码也可能看起来像:
<c:set var="totalHits" value="${model.results.size()}"/>
<c:if test="${model.totalHits < 200}">
<c:set var="totalHits" value="${model.totalHits}"/>
</c:if>
<c:set var="items" value=""/>
<c:forEach items="${model.metaCompanies}" var='item' varStatus='status'>
<c:set var="items" value="${items} ${item} including ${model.metaDescsingleCompany}"/>
</c:forEach>
<c:set var="desc" value="${totalHits} positions at ${items} related to ${model.querymetacompany}."/>
希望我理解你的意图!