2

我使用了 El ,但它无效。我收到一个错误:javax.el.ELException: Cannot convert 1 of type class java.lang.String to class java.lang.Long。1 是计数。

     <h3>My Shopping</h3>
            <c:set var="count" value=" ${sessionScope.cart.count}" />
            ${count}
             <%--
            <c:set var="cart" value="${sessionScope.cart}" />
            <c:set var="count" value=" ${sessionScope.cart.count}" />
            <br/>
            <c:if test="${count < 1}"  >    
                No Product in your cart
            </c:if>
            <c:if test="${count > 0}">
                <c:set var="listCart" value="${sessionScope.cart.cart}" />
4

1 回答 1

3

此异常表明 the${count}是 a String,而不是 a Long(或Integer,这也可以)。

假设会话范围内 bean 的count属性cart已经是正确的类型,那么我在到目前为止发布的代码中可以看到的唯一原因是值之前有一个悬空的前导空格。

<c:set var="count" value=" ${sessionScope.cart.count}" />
<!-- ---------------------^                           -->

这有效地使其成为一个显然不是有效数字的String值。" 1"删除该违规空间应该可以解决问题。

于 2012-08-27T21:15:03.440 回答