StrutsのValidatorでフォームデータの入力チェックを行いたいのですが、validwhenバリデータが上手く動作しません。
サンプルを捜し求めてネット上をさ迷ったのですが、なかなか良いサンプルが見つからずに行き詰まってしまいました。
(OR条件、NOT NULLチェックのサンプルばかりでした…)
良いサンプルサイト/ここの記述が間違っているから動かないんだなど是非是非ご教示下さいませ。
【前提】
他の入力チェック(depends="maxLength"、depends="mask"など)は有効です。
なので設定ミス(?)ではありません。
【実現したい動作】
メモ(memo/テキストエリア)が200文字を超えていたらエラー。
ただし、削除フラグ(del_flg/チェックボックス)にチェックが入っていたら、200文字を超えていてもエラーを返さない。
【記述内容】
■validation.xml
<form name="myForm">
<field property="memo" depends="validwhen">
<msg name="memoerr" key="error.memoerr"/>
<arg0 key="Form.memo"/>
<var>
<var-name>test</var-name>
<var-value>(*this*.length > 200) and (del_flg.cecked == false)</var-value>
</var>
</field>
</form>
■message.properties
error.memoerr={0}は200字以下で入力して下さい。
Form.memo=メモ
■memo.jsp
<%@ page contentType="text/html;charset=Windows-31J" language="java" %>
<html:html locale="true">
<head><title>memo</title></head>
<body>
<html:form action="/ActionMemo">
メモ:<br>
<textarea name="memo" cols="100" rows="2"></textarea><br>
削除:<html:checkbox property="del_flg" /><br>
<html:submit value="送信"/>
</html:form>
</body>
</html:html>
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
textareaの記述は他の入力項目と同じくhtml:textareaの形式ではないですか?
>validwhenバリデータが上手く動作しません
現状でどういう風に動作しているのかも書いてもらえると回答しやすいです。
多分入力エラーにならず、実行エラーも出ないという状態なのだと思いますが…
この回答への補足
ご回答有難うございますm(_ _)m
textareaの記述は正確には↓の様になっています。
<textarea name="memo" cols="100" rows="2"><bean:write name="myForm" property="memo" /></textarea>
…確かに「html:textarea property="memo"」のが記述に統一感があって良い感じですね…修正しました。
ちなみに、作成しているのは1つ前の画面でマスタから現在のめも内容を取得して表示、次画面で編集、最後の画面でマスタに登録しに行くと言う仕組みです。
現状、ご指摘の通りに入力エラーも実行エラーも発生せずにノーチェックで次画面に遷移してしまいます…。
昨日1日格闘して、上手く行かずに諦めムードです。
レスポンスのことは棚上げして、ActionクラスでValidatorExceptionを投げた方がやりやすいかなぁ…と思いはじめました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
int型の内容をbyteの配列にコピー
-
フォーム上で押されたボタンに...
-
リクエストに応じたselectedの...
-
「<c:forEach タグが終了し...
-
JSPでのリストボックス表示
-
sturtsとJSF
-
テキストボックスで入力したデ...
-
ボタンクリック-JSP判断
-
ラジオボタンの選択肢をサーブ...
-
formでテキストとファイルタイ...
-
jspファイルで注文フォームの合...
-
Servletへフォームから配列を送...
-
StrutsでPOSTのデータ(リクエ...
-
strutsを使用したjspでjavascri...
-
Strutsでの入力データチェック...
-
Struts、Iterateタグの使い方
-
strutsのリストボックスで、複...
-
フォームで同じ複数のnameで違...
-
EL式 true falseを表示
-
三菱GOTの画面切り替えについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リクエストに応じたselectedの...
-
「<c:forEach タグが終了し...
-
フォーム上で押されたボタンに...
-
int型の内容をbyteの配列にコピー
-
フォームで同じ複数のnameで違...
-
JSPでのリストボックス表示
-
EL式 true falseを表示
-
strutsを使用したjspでjavascri...
-
StrutsでPOSTのデータ(リクエ...
-
ラジオボタンの選択肢をサーブ...
-
jspでjavascript関数へ引数を渡...
-
JSPでのサブミット判定
-
Strutsで、どのRadioボタンが選...
-
jspファイルで注文フォームの合...
-
動的に作成したラジオボタンの...
-
JSPでテキストボックスのループ...
-
formでテキストとファイルタイ...
-
ボタンクリック-JSP判断
-
javaでDBから取得したデータのJ...
-
JSPとサーブレット間での画面遷...
おすすめ情報