2012-11-07 37 views
0

我想在添加實際數據之前編寫一個僅用於測試的簡單頁面。表達式語言中不允許使用Javabean函數嗎?

我有指定的方法的isEmpty(),它返回一個布爾值,與在JSP以下代碼的接口:

<c:if test="${not empty output}"> 
    <h2>${output.title}</h2> 
    <c:choose> 
     <c:when test="${output.empty}"> 
      <h3>No results found.</h3> 
     </c:when> 
     <c:otherwise> 
      <table title="Unique Users Report"> 
       <tr> 
        <th>Range</th> 
        <th>Number of Unique Users</th> 
       </tr> 
       <tr> 
        <td>Monday<br />10/29/2012</td> 
        <td>1990</td> 
       </tr> 
       <tr> 
        <td>Tuesday<br />10/30/2012</td> 
        <td>1000</td> 
       </tr> 
       <tr> 
        <td>Wednesday<br />10/31/2012</td> 
        <td>2112</td> 
       </tr> 
       <tr> 
        <td>Thursday<br />11/01/2012</td> 
        <td>2321</td> 
       </tr> 
      </table> 
     </c:otherwise> 
    </c:choose> 
</c:if> 

由於輸出沒有在這一點上設置到模型中,我不該甚至沒有得到這段代碼。用「$ {not empty output}」代替測試「$ {output.empty}」中的行允許Tomcat解析這個EL。然而,隨着碼目前爲,代碼失敗,出現以下錯誤(注意,輸出甚至沒有在這一點上實現的,所以有在模型中沒有):

org.apache.jasper.JasperException: /WEB-INF/jsp/reports/uniqueUsers.jsp(19,3) "${output.empty}" contains invalid expression(s): javax.el.ELException: Error Parsing: ${output.empty} 
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) 
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) 
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198) 
at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1186) 
at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:846) 

那麼,是不是空屬性不允許在EL中,或者有什麼我失蹤?我正在使用Tomcat 6.0.32。

回答

相關問題