Java HTTP Server

com.sun.net.httpserver.spi
クラス HttpServerProvider

java.lang.Object
  上位を拡張 com.sun.net.httpserver.spi.HttpServerProvider

public abstract class HttpServerProvider
extends Object

HttpServer のためのサービスプロバイダクラス。HttpServerProvider のサブクラスは、HttpServer の実装と関連クラスを提供します。アプリケーションでは、通常はこのクラスは使用されません。プロバイダを見つけてロードする方法については、provider() を参照してください。


コンストラクタの概要
protected HttpServerProvider()
          このクラスの新しいインスタンスを初期化します。
 
メソッドの概要
abstract  HttpServer createHttpServer(InetSocketAddress addr, int backlog)
          このプロバイダから HttpServer を作成します。
abstract  HttpsServer createHttpsServer(InetSocketAddress addr, int backlog)
          このプロバイダから HttpsServer を作成します。
static HttpServerProvider provider()
          この Java 仮想マシン呼び出しのためのシステム全体のデフォルト HttpServerProvider を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

HttpServerProvider

protected HttpServerProvider()
このクラスの新しいインスタンスを初期化します。

例外:
SecurityException - セキュリティーマネージャーがインストールされており、そのマネージャーが RuntimePermission("httpServerProvider") を拒否する場合
メソッドの詳細

createHttpServer

public abstract HttpServer createHttpServer(InetSocketAddress addr,
                                            int backlog)
                                     throws IOException
このプロバイダから HttpServer を作成します。

パラメータ:
addr - バインド先のアドレス。null または
backlog - ソケットのバックログ。値 zero はシステムデフォルトを意味する
例外:
IOException

createHttpsServer

public abstract HttpsServer createHttpsServer(InetSocketAddress addr,
                                              int backlog)
                                       throws IOException
このプロバイダから HttpsServer を作成します。

パラメータ:
addr - バインド先のアドレス。null または
backlog - ソケットのバックログ。値 zero はシステムデフォルトを意味する
例外:
IOException

provider

public static HttpServerProvider provider()
この Java 仮想マシン呼び出しのためのシステム全体のデフォルト HttpServerProvider を返します。

このメソッドを最初に呼び出したとき、次の手順でデフォルトプロバイダオブジェクトが検出されます。

  1. システムプロパティー com.sun.net.httpserver.HttpServerProvider が定義されている場合、これが具象プロバイダクラスの完全指定名とみなされます。その後、クラスがロードされ、インスタンスが作成されます。この処理に失敗した場合は、未指定の未チェックエラーまたは例外がスローされます。

  2. システムクラスローダーの認識する jar ファイルにプロバイダクラスがインストールされていて、この jar ファイルにリソースディレクトリ META-INF/services 内のプロバイダ構成ファイル com.sun.net.httpserver.HttpServerProvider が含まれている場合、ファイルに指定されている最初のクラス名が使用されます。その後、クラスがロードされ、インスタンスが作成されます。この処理に失敗した場合は、未指定の未チェックエラーまたは例外がスローされます。

  3. 最後に、上記の手段で指定されたプロバイダが存在しない場合は、システムのデフォルトプロバイダクラスのインスタンスが作成され、結果が返されます。

次回以降の呼び出しでも、1 回目の呼び出し時に返されたプロバイダが返されます。

戻り値:
システム全体のデフォルト HttpServerProvider

Java HTTP Server