繁体   English   中英

使用JSTL集设置整数值

[英]Assiging Integer value using JSTL set

我只是意识到我无法使用JSTL set标签设置Integer值。 我检查了其他帖子,但未找到相关问题。

我的JSTL代码看起来像

<c:set var="endIndex" 
       value="${fn:length(offeredService) - fn:length(serviceHistory) - 1} lt 0 ? ${fn:length(offeredService)} : ${fn:length(offeredService) - fn:length(serviceHistory) - 1}"/>

我得到的错误是

javax.el.ELException: Cannot convert -1 lt 0 ? 0 : -1 of type class java.lang.String to class java.lang.Integer

我想念什么?

您不只是需要扩展大括号以使三元运算符实际求值吗?

<c:set var="endIndex" 
    value="${
        (fn:length(offeredService) - fn:length(serviceHistory) - 1) < 0 ? 
        fn:length(offeredService)
        : fn:length(offeredService) - fn:length(serviceHistory) - 1
    }
"/>

实际上,三元运算符在执行块之外,因此就像文本一样对待。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM