2017-05-26 102 views
0

我請求URL http://localhost:8080/myApp/reg/show?pageNumber=1&pageRange=-1show.jsp我有JSTL解析負數java.lang.NumberFormatException:對於輸入字符串: 「」

<ts:pagination allData="${tecBacking.tec}" 
      pageRange="${param.pageRange}" 
      pageNumber="${param.pageNumber}" 
      url="show"> 
    <jsp:attribute name="tableHeaders"> 
      <th>Идентификатор</th> 
      <th>Код</th> 
      <th>Описание</th> 
      <th>Тип</th> 
      <th>Създадено от</th> 
    </jsp:attribute> 
</ts:pagination> 

而且我分頁標籤

<%@tag description="This is for common pagination" pageEncoding="UTF-8"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> 
<%-- The list of normal or fragment attributes can be specified here: --%> 

<%@attribute name="tableHeaders" fragment="true" required="true"%> 
<%@attribute name="allData" required="false" type="java.util.Collection"%> 
<%@attribute name="pageNumber" required="false" type="java.lang.Long"%> 
<%@attribute name="pageRange" required="false" type="java.lang.Long"%> 
<%@attribute name="url" required="false"%> 

<c:set target="${paginationModel}" property="objects" value="${(empty allData) ? paginationModel.objects : allData}" /> 
<c:set target="${paginationModel}" property="pageNumber" value="${(empty pageNumber) ? 1 : pageNumber}" /> 
<c:set target="${paginationModel}" property="pageRange" value="${(empty pageRange) ? 10 : pageRange}" /> 
<c:set target="${paginationModel}" property="url" value="${(empty url) ? paginationModel.url : url}"/> 

分頁模型

@Named 
@SessionScoped 
public class PaginationModel implements Serializable { 

    private List<List<String>> objects; 
    private Long pageNumber; 
    private Long pageRange; 
    private String url; 

    public PaginationModel() { 
     objects = new ArrayList<>(); 
     pageNumber = 1L; 
     pageRange = 10L; 
     url = ""; 
    } 
    //getters and setters 
} 

但在回答我收到這個異常

javax.servlet.ServletException:javax.servlet.jsp.JspException:java.lang.NumberFormatException:對於輸入字符串: 「」

問題是從pageRange requestParam解析-1。我儘量讓改變分頁標籤,如:

<c:set target="${paginationModel}" property="pageRange" value="${10}" /> 

,一切正常,但是當我嘗試

<c:set target="${paginationModel}" property="pageRange" value="${pageRange}" /> 

我收到同樣的異常。我嘗試調用$ {} pageRange在分頁標籤(和解析$ {10}paginationModel.pageRange)和輸出是

-1 我能不明白的地方是我的錯誤(paginationModel.pageRange有類型java.lang.Long和屬性pageRange已設置type =「java.lang.Long」)以及如何修復異常。

回答

0

java.lang.NumberFormatException:對於輸入字符串: 「」

的問題是在解析-1從pageRange requestParam。

這是不正確的。

java.lang.NumberFormatException: For input string: ""通過解析 「引發」(空字符串),例如,新長征( 「」)。你可以檢查,如果你的程序改變value="${pageRange}"value="${param.pageRange}"後的作品?

相關問題