http://localhost:8080/file.jsp?arg1=&arg2=11
正常に実行されます
http://localhost:8080/file.jsp?arg1=&arg2=
(引数 'arg2' の空の値)
500 内部サーバー エラーを表示
'arg2' の値は、' int
' の変数' jsp
'によって使用されます。Integer.parseInt(request.getParameter("arg2")
修正方法は?
http://localhost:8080/file.jsp?arg1=&arg2=11
正常に実行されます
http://localhost:8080/file.jsp?arg1=&arg2=
(引数 'arg2' の空の値)
500 内部サーバー エラーを表示
'arg2' の値は、' int
' の変数' jsp
'によって使用されます。Integer.parseInt(request.getParameter("arg2")
修正方法は?
"" を解析しようとしているからですInteger.parseInt
整数 parseInt() API を確認してください
以下のように値を渡さない場合
http://localhost:8080/file.jsp?arg1=&arg2=
空文字列は、http リクエスト パラメータで渡されます。
したがって、文字列から整数を解析するときに空のチェックを入れたほうがよいでしょう。
int arg2 = !"".equals(request.getParameter("arg2")) ?
Integer.parseInt(request.getParameter("arg2")): 0;
必要なものに対してクエリ パラメータをチェックすることを常にお勧めします。この場合、org.apache.commons.lang.math.NumberUtilsライブラリを使用して、入力された値が数値かどうかを確認し、数値でない場合はデフォルト値を使用できます。
int arg2 = NumberUtils.isNumber(request.getParameter("arg2")) ? Integer.parseInt(request.getParameter("arg2")) : 0;
Internet Explorerを使用している場合は、[ツール]-[インターネットオプション]-[詳細設定]-[ブラウジング]で[フレンドリーなHTTPエラーメッセージを表示する]のチェックを外します。これにより、エラーが何であるかをより正確に説明できるようになります。
コード自体を支援するために、コードを投稿する必要があります。