public class JaxRsResponseHandler extends java.lang.Object implements HttpRequestHandler
HttpResponse
の内容を、クライアントへのレスポンスとして書き込む。
後続のハンドラで例外が発生した場合には、ErrorResponseBuilder
を使用してエラー用のレスポンスを作成し、クライアントへのレスポンスとして書き込む。
後続のハンドラ及びErrorResponseBuilder
でHttpResponse
を生成する際には、レスポンスヘッダーも含めて設定する必要がある。
このハンドラでは、レスポンスヘッダーを自動的に設定するようなことはしない。コンストラクタと説明 |
---|
JaxRsResponseHandler() |
修飾子とタイプ | メソッドと説明 |
---|---|
HttpResponse |
handle(HttpRequest request,
ExecutionContext context)
HTTPリクエストに対する処理を実行する。
|
void |
setErrorLogWriter(JaxRsErrorLogWriter errorLogWriter)
エラーログライターを設定する。
|
void |
setErrorResponseBuilder(ErrorResponseBuilder errorResponseBuilder)
エラーレスポンスビルダーを設定する。
|
protected static void |
writeBody(java.io.InputStream in,
javax.servlet.http.HttpServletResponse nativeRes)
メッセージボディの内容をクライアントに送信する。
|
protected void |
writeHeaders(HttpResponse response,
javax.servlet.http.HttpServletResponse nativeResponse)
レスポンスヘッダーを書き込む。
|
protected void |
writeResponse(HttpResponse response,
ServletExecutionContext context)
レスポンスを書き込む。
|
public HttpResponse handle(HttpRequest request, ExecutionContext context)
HttpRequestHandler
handle
インタフェース内 Handler<HttpRequest,HttpResponse>
handle
インタフェース内 HttpRequestHandler
request
- HTTPリクエストオブジェクトcontext
- サーバサイド実行コンテキストオブジェクトprotected void writeResponse(HttpResponse response, ServletExecutionContext context)
response
- HttpResponse
context
- ServletExecutionContext
protected void writeHeaders(HttpResponse response, javax.servlet.http.HttpServletResponse nativeResponse)
HttpResponse
内のヘッダー情報を、HttpServletResponse
に対して書き込む。response
- HttpResponse
nativeResponse
- HttpServletResponse
protected static void writeBody(java.io.InputStream in, javax.servlet.http.HttpServletResponse nativeRes) throws java.io.IOException
in
- 入力ストリームの内容nativeRes
- サーブレットレスポンスjava.io.IOException
- ソケットI/Oにおけるエラーpublic void setErrorResponseBuilder(ErrorResponseBuilder errorResponseBuilder)
ErrorResponseBuilder
を差し替えたい場合に拡張クラスを設定する。errorResponseBuilder
- エラーレスポンスビルダーpublic void setErrorLogWriter(JaxRsErrorLogWriter errorLogWriter)
JaxRsErrorLogWriter
を差し替えたい場合に拡張クラスを設定する。errorLogWriter
- エラーログライター