Class HttpRequestJavaPackageMapping

java.lang.Object
nablarch.fw.web.handler.HttpRequestJavaPackageMapping
All Implemented Interfaces:
Handler<HttpRequest,HttpResponse>, HttpRequestHandler

public class HttpRequestJavaPackageMapping extends Object implements HttpRequestHandler
このハンドラは、画面オンライン処理におけるリクエストパス中の部分文字列(ベースURI)を Javaパッケージ階層にマッピングすることで、動的に委譲先ハンドラを決定するディスパッチ処理を行う。 本ハンドラの実装は基本的に RequestPathJavaPackageMapping のラッパーであり その機能は以下の2点を除けば全く同じものである。
 1. ディスパッチ対象のクラスが確定した時点で、HTTPアクセスログにその内容を出力する。
 2. ベースパスを設定する際にURLの書式バリデーションを行うアクセサ setBaseUri(String)を追加。
 
機能の詳細については、 RequestPathJavaPackageMapping を参照すること。
See Also:
  • RequestPathJavaPackageMapping
  • Constructor Details

    • HttpRequestJavaPackageMapping

      public HttpRequestJavaPackageMapping()
      コンストラクタ
    • HttpRequestJavaPackageMapping

      public HttpRequestJavaPackageMapping(String baseUri, String basePackage)
      コンストラクタ
      Parameters:
      baseUri - マップ元リクエストURI
      basePackage - マップ先Javaパッケージ
  • Method Details

    • handle

      public HttpResponse handle(HttpRequest request, ExecutionContext context)
      HTTPリクエストに対する処理を実行する。 URI中の部分文字列をJavaパッケージへマッピングすることで動的に 委譲先のハンドラを決定し、処理を委譲する。 また、委譲先のクラスがハンドラインターフェースを実装していない場合でも、 HttpMethodBinding により処理を委譲する。
      Specified by:
      handle in interface Handler<HttpRequest,HttpResponse>
      Specified by:
      handle in interface HttpRequestHandler
      Parameters:
      request - HTTPリクエストオブジェクト
      context - サーバサイド実行コンテキストオブジェクト
      Returns:
      HTTPレスポンスオブジェクト
    • setBasePath

      public HttpRequestJavaPackageMapping setBasePath(String basePath)
      ベースパスを設定する。
      Parameters:
      basePath - ベースパス
      Returns:
      このオブジェクト自体
    • setBaseUri

      public HttpRequestJavaPackageMapping setBaseUri(String baseUri)
      ベースURIを設定する。(setBasePath(String)のシノニム)
      Parameters:
      baseUri - ベースURI
      Returns:
      このオブジェクト自体
    • setBasePackage

      public HttpRequestJavaPackageMapping setBasePackage(String basePackage)
      ベースパッケージを設定する。
      Parameters:
      basePackage - ベースパッケージ
      Returns:
      このオブジェクト自体
    • setOptionalPackageMappingEntries

      public HttpRequestJavaPackageMapping setOptionalPackageMappingEntries(List<JavaPackageMappingEntry> optionalPackageMappingEntries)
      RequestHandlerEntryでURIに合致したマッピング先Javaパッケージを上書きする場合に使用する、JavaPackageMappingEntryのリストを設定する。
      Parameters:
      optionalPackageMappingEntries - RequestHandlerEntryでURIに合致したマッピング先Javaパッケージを上書きする場合に使用する、JavaPackageMappingEntryのリスト
      Returns:
      このオブジェクト自体