在 JSP 頁面上傳並導入 .xls 檔案時,瀏覽器拋出 java.lang.NullPointerException,堆疊追蹤指向 import_005ferror_jsp.java:298,且控制台無進一步反應。完整堆疊如下:
java.lang.NullPointerException
at org.apache.jsp.jsp.cssc.import_005ferror_jsp._jspService(import_005ferror_jsp.java:298)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
...
日誌顯示異常發生在 JSP 編譯後的 Servlet 第 298 行,通常是因為在處理導入資料時,某個物件為 null 卻嘗試呼叫其方法或存取屬性。常見原因包括:
cell.getStringCellValue() 未判斷 null)。Row 或 Cell 物件為 null(空白行、合併儲存格)。InputStream,導致解析器接收到空流。null。Cell、Row 進行 null 判斷,並處理空值情況。
Row row = sheet.getRow(i);
if (row == null) continue;
Cell cell = row.getCell(j);
String value = (cell != null) ? cell.toString().trim() : "";
null。DataFormatter 統一取得儲存格字串,自動處理各類型與空值。若問題持續,請提供完整的 JSP 關鍵程式碼片段(特別是第 298 行附近)以便進一步協助。