パッケージ jakarta.servlet

クラス ServletInputStream

  • 実装されたすべてのインターフェース:
    CloseableSEAutoCloseableSE

    public abstract class ServletInputStream
    extends InputStreamSE
    クライアントリクエストからバイナリデータを読み取るための入力ストリームを提供します。これには、一度に 1 行ずつデータを読み取るための効率的な readLine メソッドが含まれます。HTTP POST や PUT などの一部のプロトコルでは、ServletInputStream オブジェクトを使用して、クライアントから送信されたデータを読み取ることができます。

    ServletInputStream オブジェクトは、通常 ServletRequest.getInputStream() メソッドを介して取得されます。

    これは、サーブレットコンテナーが実装する抽象クラスです。このクラスのサブクラスは、java.io.InputStream.read() メソッドを実装する必要があります。

    作成者:
    Various
    関連事項:
    ServletRequest
    • コンストラクターの詳細

      • ServletInputStream

        protected ServletInputStream()
        これは抽象クラスであるため、何もしません。
    • メソッドの詳細

      • readLine

        public int readLine​(byte[] b,
                            int off,
                            int len)
                     throws IOExceptionSE
        入力ストリームを一度に 1 行ずつ読み取ります。オフセットから開始して、特定のバイト数を読み取るか、改行文字に達するまで配列にバイトを読み取ります。改行文字も配列に読み取ります。

        このメソッドは、最大バイト数を読み取る前に入力ストリームの最後に到達すると -1 を返します。

        パラメーター:
        b - データが読み込まれるバイトの配列
        off - このメソッドが読み取りを開始する文字を指定する整数
        len - 読み込むバイトの最大数を指定する整数
        戻り値:
        読み込まれた実際のバイト数を指定する整数、またはストリームの終わりに達した場合は -1
        例外:
        IOExceptionSE - 入力または出力の例外が発生した場合
      • isFinished

        public abstract boolean isFinished()
        ストリームからすべてのデータが読み取られた場合は true を返し、そうでない場合は false を返します。
        戻り値:
        この特定のリクエストのすべてのデータが読み取られた場合は true、そうでない場合は false を返します。
        導入:
        Servlet 3.1
      • isReady

        public abstract boolean isReady()
        ブロックせずにデータを読み取ることができる場合は true を返し、そうでない場合は false を返します。

        このメソッドが false を返し、ReadListenersetReadListener(ReadListener) を介して設定されている場合、データ (または EOF) が利用可能になると、コンテナーはその後 ReadListener.onDataAvailable() (または ReadListener.onAllDataRead() ) を呼び出します。最初の呼び出し以外では、ReadListener.onDataAvailable() は、このメソッドが呼び出されて false を返す場合にのみ呼び出されます。

        戻り値:
        ブロックせずにデータを取得できる場合は true、そうでない場合は false を返します。
        導入:
        Servlet 3.1
        関連事項:
        ReadListener
      • setReadListener

        public abstract void setReadListener​(ReadListener readListener)
        読み取りが可能になったときに、提供された ReadListener を呼び出すよう ServletInputStream に指示します
        パラメーター:
        readListener - 読み取りが可能になったときに通知される ReadListener
        例外:
        IllegalStateExceptionSE - 次の条件のいずれかに該当する場合
        • 関連するリクエストはアップグレードされず、非同期も開始されません
        • setReadListener は同じリクエストの範囲内で複数回呼び出されます。
        NullPointerExceptionSE - readListener が null の場合
        導入:
        Servlet 3.1