Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

strutsのvalidateについて

strutsを利用してWebアプリを開発しています。
validatorを利用してエラーチェックをしようとしているのですがうまくいきません。

valodate処理が行われると画面遷移がうまくいかず、
ブラウザ画面が真っ白になってしまいます。
コンソール・ログ上に例外は何もでておらず、
strutsのログをdebugで出力して確認してみても
例外は発生していませんでした。

ログの最後には
validate failed,return to XXXX(struts-config.xmlの<action>タグのinput項目に記述した遷移先)
というログが出力されていました。
ですのでvalidate処理は正常に行われて、
それ以降の処理で何かおかしいのではないかと思っています。

ちなみに、validatorを利用せずに、ActionFormクラス内で
validate()メソッドを自力実装した場合でも、
入力エラーが合った場合(ActionErrorがあった場合)
同様に画面が真っ白になります。

input項目遷移画面の指定が間違っているのかと思い、
<action foward>タグに同じスクリーンを指定したところ
問題なく遷移しましたので指定の方法はあっていると思っています。

あと考えられるのはエラーメッセージ周りの間違いかと思い、確認をしているのですがどれも正しそうに見えます。。

そもそもvalidate時に画面が白くなるのはどういうときなのでしょうか。。。

申し訳ありませんがご教授お願いいたします。

2

回答

3593

閲覧

2件の回答

評価

0

ログ・ソースの類の提示がないので詳しいことは分かりませんが。

画面が白い場合は
1.DTOの定義が間違えている。
2.bean:define に null または ブランクを設定している。
3.遷移先を相対パスで記述してる。

評価

0

>あのひと
ありがとうございます。
なんとか白い画面になるのを回避することができました。

struts-config.xmlを再度サンプルアプリから取得したところ
うまくいきました。
(独自設定している箇所はそのままコピペしました。)

strusのサンプルアプリの設定ファイルと
以前構築したアプリの設定ファイルの双方を参考に
struts-config.xmlを作成していたのですが
dtdとファイルが一致していなかったのかもしれません。

ありがとうございました。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。