## nga.servlet
クラス ServiceInfo

    java.lang.Object
      nga.servlet.ServiceInfo

    public class ServiceInfo

extends Object

`service` メソッドの実行時情報。
呼び出されるコントローラのメソッドにこのクラスの引数があれば， CongaServlet がコントローラ呼び出し時にこのクラスのインスタンスを渡す。
呼び出されるコントローラのメソッドにこのクラスの引数がない場合は，渡されない。

メソッドの概要
`void` `call(String requestId, String callBackRequestId)` 指定したIDのリクエスト実行を予約する。
`void` `forward(String requestId)` 指定したIDのリクエスト実行を予約する。
`ErrorInfo` `getErrorInfo()` エラー情報を取得する。
`Log` `getLog()` ログを取得する。
`String` `getNextRequestId()` 次に実行するリクエストIDを取得する。
`Object` `getPageObject()` ページオブジェクトを取得する。
`ParameterInfo` `getParameterInfo()` parameter タグ情報を取得する。
`PropertyInfoMap` `getPropertyInfoMap()` property タグ情報のマップを取得する。
`HttpServletRequest` `getRequest()` サーブレットリクエストを取得する。
`String` `getRequestId()` リクエストIDを取得する。
`RequestInfo` `getRequestInfo()` request タグ情報を取得する。
`HttpServletResponse` `getResponse()` サーブレットレスポンスを取得する。
`ResultInfo` `getResultInfo()` result タグ情報を取得する。
`Object` `getResultObject()` 処理結果オブジェクトを取得する。
`CongaServlet` `getServlet()` CongaServlet を取得する。
`HttpSession` `getSession()` セッション情報を取得する。

`

`<T> T`

`

`getSingleInstance(Class<T> cls)`
指定したクラスのインスタンスを取得する。

`String` `getSystemEncoding()` システムエンコーディング文字列を取得する。
`TargetInfoList` `getTargetInfoList()` result タグ中の target タグ情報リストを取得する。
`boolean` `hasError()` エラーが発生しているかどうかを調べる。
`boolean` `isForwarding()` 画面遷移状態にあるかどうかを調べる。

`

`<T> T`

`

`newInstance(Class<T> cls)`
指定されたクラスのインスタンスを取得する。

`void` `returnToCaller()` `call(String, String)` メソッドを呼び出したリクエストの実行を予約する。
`void` `setError()` 現在のリクエストをエラー状態として記録する。
`ErrorInfo` `setErrorMessage(String message, Object... args)` エラーメッセージをセットする。
`void` `setException(Throwable exception)` 例外をセットする。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

メソッドの詳細

### getServlet

    public CongaServlet getServlet()

  CongaServlet を取得する。

### getRequest

    public HttpServletRequest getRequest()

  サーブレットリクエストを取得する。

  戻り値:
    サーブレットリクエスト。

### getResponse

    public HttpServletResponse getResponse()

  サーブレットレスポンスを取得する。

  戻り値:
    サーブレットレスポンス。

### getSession

    public HttpSession getSession()

  セッション情報を取得する。

  戻り値:
    セッション情報。

### getSystemEncoding

    public String getSystemEncoding()

  システムエンコーディング文字列を取得する。 web.xml の初期化パラメタ `CongaServlet.SYSTEM_ENCODING` で指定された文字列を返す。

  戻り値:
    システムエンコーディング文字列。

### getErrorInfo

    public ErrorInfo getErrorInfo()

  エラー情報を取得する。

  戻り値:
    エラー情報。

### setErrorMessage

    public ErrorInfo setErrorMessage(String message,
                                     Object... args)

  エラーメッセージをセットする。

  パラメータ:
    `message` - メッセージ。
    `args` - メッセージ引数。

### setException

    public void setException(Throwable exception)

  例外をセットする。

  パラメータ:
    `exception` - 例外。

### setError

    public void setError()

  現在のリクエストをエラー状態として記録する。

### getRequestInfo

    public RequestInfo getRequestInfo()

  request タグ情報を取得する。

  戻り値:
    request タグ情報。

### getRequestId

    public String getRequestId()

  リクエストIDを取得する。

  戻り値:
    リクエストID。

### getNextRequestId

    public String getNextRequestId()

  次に実行するリクエストIDを取得する。

  戻り値:
    次に実行するリクエストID。

### getResultInfo

    public ResultInfo getResultInfo()

  result タグ情報を取得する。

  戻り値:
    result タグ情報。

### getTargetInfoList

    public TargetInfoList getTargetInfoList()

  result タグ中の target タグ情報リストを取得する。
  getRequestInfo().getResultInfo().getTargetInfoList() のショートカット。

  戻り値:
    target タグ情報のリスト。

### getParameterInfo

    public ParameterInfo getParameterInfo()

  parameter タグ情報を取得する。
  getRequestInfo().getParameterInfo() のショートカット。

  戻り値:
    parameter タグ情報。

### getPropertyInfoMap

    public PropertyInfoMap getPropertyInfoMap()

  property タグ情報のマップを取得する。
  getRequestInfo().getParameterInfo().getPropertyInfoMap() のショートカット。

  戻り値:
    property タグ情報のマップ。

### getPageObject

    public Object getPageObject()

  ページオブジェクトを取得する。

  戻り値:
    ページオブジェクト。

### getResultObject

    public Object getResultObject()

  処理結果オブジェクトを取得する。
  コントローラ実行後に取得できるようになる。
  処理結果オブジェクトは，次のどちらかとなる。
  1. コントローラが null 以外の戻り値を返した場合は，そのオブジェクト。
  2. コントローラが null 以外の戻り値を返さなかった場合は， `getPageObject`で取得できるページオブジェクトと同一のオブジェクト。

  戻り値:
    処理結果オブジェクト。コントローラ実行前は null。

### newInstance

    public <T> T newInstance(Class<T> cls)

  指定されたクラスのインスタンスを取得する。

  パラメータ:
    `cls` - インスタンスを作成するクラス。
  戻り値:
    作成したインスタンス。

### getSingleInstance

    public <T> T getSingleInstance(Class<T> cls)

  指定したクラスのインスタンスを取得する。 このメソッドで作成されたインスタンスが既にある場合は， 作成済みのインスタンスを返す。

  パラメータ:
    `cls` - インスタンスを取得するクラス。
  戻り値:
    取得したインスタンス。

### forward

    public void forward(String requestId)

  指定したIDのリクエスト実行を予約する。

  パラメータ:
    `requestId` - 次に実行するリクエストID。

### call

    public void call(String requestId,
                     String callBackRequestId)

  指定したIDのリクエスト実行を予約する。 `returnToCaller()` メソッドで，現在実行中のリクエストを呼び出すことができる。

  パラメータ:
    `requestId` - 次に実行するリクエストID。

### returnToCaller

    public void returnToCaller()

  `call(String, String)` メソッドを呼び出したリクエストの実行を予約する。

### hasError

    public boolean hasError()

  エラーが発生しているかどうかを調べる。

  戻り値:
    エラーが発生している場合は true。

### isForwarding

    public boolean isForwarding()

  画面遷移状態にあるかどうかを調べる。

  戻り値:
    画面遷移状態にある場合は true。

### getLog

    public Log getLog()

  ログを取得する。

  戻り値:
    ログ。