You are viewing the documentation for the 2.0.x release series. The latest stable release series is 2.4.x.
§アプリケーションのグローバル設定
§Global オブジェクト
プロジェクト内に Global
オブジェクトを定義すると、アプリケーションのグローバル設定を行うことができます。このオブジェクトはルートパッケージに定義される必要があります。
import play.*;
public class Global extends GlobalSettings {
}
§アプリケーションの起動や停止をインターセプトする
onStart
や onStop
操作をオーバーライドすることで、対応するアプリケーションのライフサイクルイベントの通知を受けることができます。
import play.*;
public class Global extends GlobalSettings {
@Override
public void onStart(Application app) {
Logger.info("Application has started");
}
@Override
public void onStop(Application app) {
Logger.info("Application shutdown...");
}
}
§アプリケーションのエラーページを提供する
アプリケーションで例外が発生すると、onError
操作が呼び出されます。デフォルトでは、フレームワークに用意されている汎用的なエラーページを表示するようになっていますが、これをオーバーライドすることができます。
import play.*;
import play.mvc.*;
import static play.mvc.Results.*;
public class Global extends GlobalSettings {
@Override
public Result onError(Throwable t) {
return internalServerError(
views.html.errorPage(t)
);
}
}
§存在しないアクションを扱う
フレームワークがリクエストに対応するアクションを見つけられなかった場合、onHandlerNotFound
操作が呼び出されます。
import play.*;
import play.mvc.*;
import static play.mvc.Results.*;
public class Global extends GlobalSettings {
@Override
public Result onHandlerNotFound(String uri) {
return notFound(
views.html.pageNotFound(uri)
);
}
}
また、ルートは存在するものの、リクエストパラメータをバインドできなかった場合は、onBadRequest
操作が呼び出されます。
import play.*;
import play.mvc.*;
import static play.mvc.Results.*;
public class Global extends GlobalSettings {
@Override
public Result onBadRequest(String uri, String error) {
return badRequest("Don't try to hack the URI!");
}
}
次ページ: リクエストのインターセプト
このドキュメントの翻訳は Play チームによってメンテナンスされているものではありません。 間違いを見つけた場合、このページのソースコードを ここ で確認することができます。 ドキュメントガイドライン を読んで、お気軽にプルリクエストを送ってください。