Wicketで404エラーページを設定する
“404ページが見つかりません”というエラーのために良いエラーページをカスタマイズすることを常にお勧めします。このガイドは、Wicketで404エラーページを設定する方法を示しています。
1.エラーページ
Wicketのエラーページとクラスを作成します。
package com.mkyong.user;
import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
public class ErrorPage404 extends WebPage {
public ErrorPage404(final PageParameters parameters) {
add(new Label("404", "Page Not Found!"));
}
}
<html>
<body>
<h1>Wicket Error 404 example</h1>
<h1><span wicket:id="404"></span></h1>
</body>
</html>
2. 404をweb.xmlに入れる
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app ...>
<filter>
<filter-name>wicket.wicketTest</filter-name>
<filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
<init-param>
<param-name>applicationClassName</param-name>
<param-value>com.mkyong.WicketApplication</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>wicket.wicketTest</filter-name>
<url-pattern>/** </url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
<error-page>
<error-code>404</error-code>
<location>/error404</location>
</error-page>
</web-app>
-
注意** ディスパッチャタグ “REQUEST”と “ERROR”は両方とも必要です。
3.エラーをページに合わせる
Wicketアプリケーションでは、
init()
を無効にし、エラーページ ”
ErrorPage404.html
“に ”
/error404
“を一致させます。
public class WicketApplication extends WebApplication {
@Override
protected void init() {
mount(new QueryStringUrlCodingStrategy("error404",ErrorPage404.class));
}
}
4.デモ
完了していないURL、「404ページが見つかりません」エラー、「/error404」にリダイレクト、「/error404」に「ErrorPage404.html」ファイルが表示されます
__Figure:URLが見つからない場合(404)、カスタムエラーページを表示します。

ダウンロードする –
Wicket-404-Example.zip
(8KB)