req.getAttribute()でフォーム入力情報を得るためには,その要素にname属性を付ける必要があった
id属性を付けていたら,req.getAttribute()などが成立しなかった.以下に,サーブレットへ送るフォーム構造の一部を記載する.
失敗例
<fieldset><legend>検索フォーム</legend> <dl> <dt><label for="uplaodfile">送信するファイル</label></dt> <dd><input type="file" id="uploadfile"></dd> </dl> <input type="checkbox" id="uploadonly"> <label for="uploadonly">ファイル送信だけ行い,検索はしない</label> </fieldset>
成功例
<fieldset><legend>検索フォーム</legend> <dl> <dt><label for="uplaodfile">送信するファイル</label></dt> <dd><input type="file" name="uploadfile"></dd> </dl> <input type="checkbox" name="uploadonly"> <label for="uploadonly">ファイル送信だけ行い,検索はしない</label> </fieldset>
これに気付くまで長時間悩まず,スパッと6時間寝たのは正解だった.