Documentation

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 {

}

§アプリケーションの起動や停止をインターセプトする

onStartonStop 操作をオーバーライドすることで、対応するアプリケーションのライフサイクルイベントの通知を受けることができます。

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 チームによってメンテナンスされているものではありません。 間違いを見つけた場合、このページのソースコードを ここ で確認することができます。 ドキュメントガイドライン を読んで、お気軽にプルリクエストを送ってください。