首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

JSP 表單提交拋 NullPointerException:Checkbox 未加 name 屬性導致 getParameterValues 返回 null

     編輯:程式設計綜合問答

異常堆棧關鍵行

String[] love = (String[]) request.getParameterValues("love");
for (int i = 0; i < love.length; i++) { ... } // love 為 null → NPE

根本原因

HTML 表單中愛好復選框缺少 name="love" 屬性:

<!-- 錯誤示例 -->
<input type="checkbox" value="電腦網絡" />電腦網絡
<input type="checkbox" value="影視娛樂" />影視娛樂

瀏覽器提交時不會發送無 name 的字段,`getParameterValues` 返回 null,遍歷拋 NPE。

修正 HTML

<td align="left">
  <input type="checkbox" name="love" value="love1" />電腦網絡
  <input type="checkbox" name="love" value="love2" />影視娛樂
  <input type="checkbox" name="love" value="love3" />棋牌娛樂
  <br/>
  <input type="checkbox" name="love" value="love4" />讀書讀報
  <input type="checkbox" name="love" value="love5" />美酒佳肴
  <input type="checkbox" name="love" value="love6" />繪畫書法
</td>

後端防禦性代碼

String[] love = request.getParameterValues("love");
if (love != null) {
    for (String v : love) {
        // 處理
    }
} else {
    // 用戶未勾選任何愛好
}

同類問題:下拉框 <select> 缺 name

職業下拉框 `` 父 `