public abstract class HttpExchange extends Object
ベースとなるリソースを解放または再利用するには、HttpExchange
を閉じておく必要があります。交換を閉じられなかった場合の影響は定義されていません。
修飾子と型 | フィールドと説明 |
---|---|
static String |
REQUEST_CIPHER_SUITE
標準プロパティ: HTTPSでの要求の受信時の暗号化方式群値
|
static String |
REQUEST_KEY_SIZE
標準プロパティ: HTTPSでの要求の受信時のアルゴリズムのビット・サイズ
|
static String |
REQUEST_X509CERTIFICATE
標準プロパティ: 要求に関連付けられているSSL証明書(存在する場合)
|
コンストラクタと説明 |
---|
HttpExchange() |
修飾子と型 | メソッドと説明 |
---|---|
abstract void |
addResponseHeader(String name, String value)
指定された名前と値を持つ応答ヘッダーを追加します。
|
abstract void |
close()
これは、交換を終了するために呼び出す必要があります。
|
abstract Object |
getAttribute(String name)
この
HttpExchange に関連付けられた属性を返します。 |
abstract Set<String> |
getAttributeNames()
この
HttpExchange に関連付けられたすべての属性名を示します。 |
abstract String |
getContextPath()
アプリケーション内のすべての端点のコンテキスト・パスを返します。
|
abstract HttpContext |
getHttpContext()
この交換の
HttpContext を返します。 |
abstract InetSocketAddress |
getLocalAddress()
要求を受信した未解決のローカル・アドレスを返します。
|
abstract String |
getPathInfo()
要求URI内でWebサービスのパスの後ろからクエリー文字列の前までの位置に書かれ、「/」で始まる追加のパス情報を返します。
|
abstract String |
getProtocol()
protocol/majorVersion.minorVersionの形式で要求からのプロトコル文字列を返します。
|
abstract String |
getQueryString()
要求URI内のパスの後ろに含まれているクエリー文字列を返します。
|
abstract InetSocketAddress |
getRemoteAddress()
この要求を呼び出すリモート・エンティティの未解決のアドレスを返します。
|
abstract InputStream |
getRequestBody()
要求本体を読み込むことができるストリームを返します。
|
abstract String |
getRequestHeader(String name)
指定された要求ヘッダーの値を返します。
|
abstract Map<String,List<String>> |
getRequestHeaders()
この要求に組み込まれたHTTPヘッダーを含む不変のマップを返します。
|
abstract String |
getRequestMethod()
HTTP要求メソッドを取得します
|
abstract String |
getRequestURI()
HTTP要求の最初の行にあるこの要求のURIの、プロトコル名からクエリー文字列までの部分を返します。
|
abstract OutputStream |
getResponseBody()
応答本体の書込み先となるストリームを返します。
|
abstract Map<String,List<String>> |
getResponseHeaders()
HTTP応答ヘッダーを格納でき、この応答の一部として送信される、変更可能なマップを返します。
|
abstract String |
getScheme()
たとえばhttpまたはhttpsのように、この要求に使用されるスキームの名前を返します。
|
abstract Principal |
getUserPrincipal()
この
HttpExchange に対して認証されたユーザーを表すPrincipal を返します。 |
abstract boolean |
isUserInRole(String role)
認証されたユーザーが指定された論理的な「ロール」に含まれているかどうかを示します。
|
abstract void |
setStatus(int status)
この応答のHTTPステータス・コードを設定します。
|
public static final String REQUEST_CIPHER_SUITE
型: String
public static final String REQUEST_KEY_SIZE
型: Integer
public abstract Map<String,List<String>> getRequestHeaders()
マップ内のキーでは大文字と小文字が区別されません。
public abstract String getRequestHeader(String name)
getRequestHeaders()
を使用する代わりに、ヘッダーを取得するための簡易メソッドです。name
- 要求ヘッダーの名前public abstract Map<String,List<String>> getResponseHeaders()
マップ内のキーでは大文字と小文字が区別されません。
public abstract void addResponseHeader(String name, String value)
getResponseHeaders()
を使用する代わりに、応答ヘッダーを追加するための簡易メソッドです。name
- ヘッダーの名前value
- 追加のヘッダー値。オクテット文字列を含む場合は、RFC 2047 (http://www.ietf.org/rfc/rfc2047.txt)に従ってエンコードするようにするgetResponseHeaders()
public abstract String getRequestURI()
public abstract String getContextPath()
コンテキスト・パスは、端点のアドレスを計算するために使用されます。HttpContext.getPath()
を参照してください。
HttpContext.getPath()
public abstract String getRequestMethod()
public abstract HttpContext getHttpContext()
HttpContext
を返します。コンテナは、要求と関連する端点のHttpContextを一致させますpublic abstract void close() throws IOException
IOException
- 入出力エラーが発生した場合public abstract InputStream getRequestBody() throws IOException
IOException
- 要求の処理中に入出力エラーが発生した場合public abstract OutputStream getResponseBody() throws IOException
setStatus(int)
を呼び出す必要があります。同一の交換用にこのメソッドを複数回呼び出した場合でも、同じストリームが返されます。IOException
- 応答の処理中に入出力エラーが発生した場合public abstract void setStatus(int status)
このメソッドは、getResponseBody()
を呼び出す前に呼び出す必要があります。
status
- 送信する応答コードgetResponseBody()
public abstract InetSocketAddress getRemoteAddress()
public abstract InetSocketAddress getLocalAddress()
public abstract String getProtocol()
public abstract String getScheme()
public abstract String getPathInfo()
これはMessageContext.PATH_INFO
に使用できます
public abstract String getQueryString()
これはMessageContext.QUERY_STRING
に使用できます
public abstract Object getAttribute(String name)
HttpExchange
に関連付けられた属性を返します。そうすると、JAX-WSハンドラと端点はMessageContext
を使用して属性にアクセスすることができます。
サーブレット・コンテナは、属性としてMessageContext.SERVLET_CONTEXT
、MessageContext.SERVLET_REQUEST
、およびMessageContext.SERVLET_RESPONSE
を公開する必要があります。
コンテナがHTTPSを使用して要求を受け付けると、属性として次の情報が公開される必要があります。属性とはREQUEST_CIPHER_SUITE
およびREQUEST_KEY_SIZE
です。要求に関連付けられたSSL証明書がある場合は、REQUEST_X509CERTIFICATE
を使用して公開する必要があります。
name
- 属性名public abstract Set<String> getAttributeNames()
HttpExchange
に関連付けられたすべての属性名を示します。getAttribute(String)
public abstract Principal getUserPrincipal()
HttpExchange
に対して認証されたユーザーを表すPrincipal
を返します。public abstract boolean isUserInRole(String role)
role
- ロールの名前を指定する バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.