私はJSPファイルでURLパラメータを取得するために以下を使用しました。このJSPファイルは、Strutsバリデータで検証しているフォームのWebページを表します。フォームが最初にロードすると名前parm
とはURLパラメータが存在しない場合"request.getParameter"は存在しないURLパラメータの場合は "-1"を返します
<% String tempVal= (String)request.getParameter("parm");%>
は、tempVal
パラメータの値がnull
です。
次に、フォームに無効なデータが含まれたフォームを送信し、エラーメッセージの検証を行って同じページに移動します(ActionForm
クラスのValidate
メソッドを実行した後)。
しかし今回はtempVal
の値は-1
です。
ActionForm
クラスの私のValidate
メソッドは以下の通りです。
@Override
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
{
ActionErrors errors = null;
errors = super.validate(mapping, request);
String temp2 = request.getParameter("param3");
if(temp2 == null){
errors.add("some Error");
}
return errors;
}
この現象が発生する理由は何ですか? ありがとうございます
"String"へのキャストは必要ありませんが、私は理解しています。** String tempVal = request.getParameter( "parm"); **はURLパラメータを取得する方法です。この動作の理由はわかりません。 –