人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

strutsで、定義していないActionのURL「?.do」でアクセスすると、
Tomcatで500エラーと表示されてしまい、

例外
javax.servlet.ServletException: No action config found for the specified url.
(省略)

原因
org.apache.struts.chain.commands.InvalidPathException: No action config found for the specified url.
(省略)

などとスタックがトレースされてしまいます。
もちろん、アクションの拡張子でない「jsp」などの場合は、存在しないURLを打つと
404エラーとなりますが、strutsのアクションでも404にするにはどうすればよいのでしょうか。

●質問者: kyoko55
●カテゴリ:インターネット ウェブ制作
✍キーワード:Apache CHAIN config JSP Servlet
○ 状態 :キャンセル
└ 回答数 : 1/1件

▽最新の回答へ

1 ● kn1967

逃げ的な発想になりますが web.xmlを設定してエラーページに飛ばすのはいかが?

<error-page>
 <exception-type>javax.servlet.ServletException</exception-type>
 <location>/hoge/hoge.html</location>
</error-page>
◎質問者からの返答

web.xmlで思い出しましたが、参考書などで見かけるような

<servlet-mapping>

<servlet-name>action</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>

で、拡張子.doの全てをstrutsに結び付けているのが問題ですね。

ワイルドカードでなく、定義済みのURLの数だけ、<url-mapping>タグを定義することで自己解決しました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ