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, 2013, Oracle and/or its affiliates. All rights reserved.