質問
HTMLからJSPに対して「POST」でパラメータを複数送信し、JSPでgetParameterNamesメソッドを使用してパラメータのnameを取得したいのですが、nullが返ってきてしまいます。
なのでどうすれば正常にnameを受け取れるか、教えてください。
※補足
HTMLから「GET」で同じパラメータを送信すると、なぜか問題なく受け取れます。
実際のソースコード
HTML
1<html lang="ja"> 2<head> <title></title> <meta http-equiv="Content-Type"> 3<meta http-equiv="Content-Style-Type" content="text/css"> 4 <meta http-equiv="Content-Script-Type" content="text/javascript"> 5 <meta http-equiv="Pragma" content="no-cache"> 6 </head> 7 8<body> 9<form id="biz" method="post"> 10<input type="hidden" name="companyContractState" value="01"><br> 11<input type="hidden" name="companyNmJp" value="japan"> 12<button type="submit" form="biz" formaction="JSPのURL">送信</button> 13</form> 14</body> 15 16</html>
パラメータを受け取る処理はJSPのhead内に書いています。
(パラメータを受け取ったら最終的にはパラメータをローカルストレージに保存し、javascriptで別ページに自動遷移する予定です。)
JSP
1<head> 2<script> 3<% 4Enumeration names = request.getParameterNames(); 5if(names !=null){ 6 while (names.hasMoreElements()){ 7 String name = (String)names.nextElement(); 8 //この時点で「name」の中身を確認すると、「null」が入っていた(POST送信時) 9 String val = request.getParameter(name); 10%> 11 localStorage.setItem('<%= name %>','<%= val %>'); 12<% 13 } 14} 15</script> 16%> 17</head>