Class ServletOutputStream

java.lang.Object
java.io.OutputStream
jakarta.servlet.ServletOutputStream
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable

public abstract class ServletOutputStream extends OutputStream
Provides an output stream for sending binary data to the client. A ServletOutputStream object is normally retrieved via the ServletResponse.getOutputStream() method.

This is an abstract class that the servlet container implements. Subclasses of this class must implement the java.io.OutputStream.write(int) method.

See Also:
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Does nothing, because this is an abstract class.
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract boolean
    Checks if a non-blocking write will succeed.
    void
    print(boolean b)
    Writes a boolean value to the client, with no carriage return-line feed (CRLF) character at the end.
    void
    print(char c)
    Writes a character to the client, with no carriage return-line feed (CRLF) at the end.
    void
    print(double d)
    Writes a double value to the client, with no carriage return-line feed (CRLF) at the end.
    void
    print(float f)
    Writes a float value to the client, with no carriage return-line feed (CRLF) at the end.
    void
    print(int i)
    Writes an int to the client, with no carriage return-line feed (CRLF) at the end.
    void
    print(long l)
    Writes a long value to the client, with no carriage return-line feed (CRLF) at the end.
    void
    Writes a String to the client, without a carriage return-line feed (CRLF) character at the end.
    void
    Writes a carriage return-line feed (CRLF) to the client.
    void
    println(boolean b)
    Writes a boolean value to the client, followed by a carriage return-line feed (CRLF).
    void
    println(char c)
    Writes a character to the client, followed by a carriage return-line feed (CRLF).
    void
    println(double d)
    Writes a double value to the client, followed by a carriage return-line feed (CRLF).
    void
    println(float f)
    Writes a float value to the client, followed by a carriage return-line feed (CRLF).
    void
    println(int i)
    Writes an int to the client, followed by a carriage return-line feed (CRLF) character.
    void
    println(long l)
    Writes a long value to the client, followed by a carriage return-line feed (CRLF).
    void
    Writes a String to the client, followed by a carriage return-line feed (CRLF).
    abstract void
    Sets the WriteListener for this ServletOutputStream and thereby switches to non-blocking IO.

    Methods inherited from class java.io.OutputStream

    close, flush, nullOutputStream, write, write, write

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ServletOutputStream

      protected ServletOutputStream()
      Does nothing, because this is an abstract class.
  • Method Details

    • print

      public void print(String s) throws IOException
      Writes a String to the client, without a carriage return-line feed (CRLF) character at the end.
      Parameters:
      s - the String to send to the client
      Throws:
      IOException - if an input or output exception occurred
    • print

      public void print(boolean b) throws IOException
      Writes a boolean value to the client, with no carriage return-line feed (CRLF) character at the end.
      Parameters:
      b - the boolean value to send to the client
      Throws:
      IOException - if an input or output exception occurred
    • print

      public void print(char c) throws IOException
      Writes a character to the client, with no carriage return-line feed (CRLF) at the end.
      Parameters:
      c - the character to send to the client
      Throws:
      IOException - if an input or output exception occurred
    • print

      public void print(int i) throws IOException
      Writes an int to the client, with no carriage return-line feed (CRLF) at the end.
      Parameters:
      i - the int to send to the client
      Throws:
      IOException - if an input or output exception occurred
    • print

      public void print(long l) throws IOException
      Writes a long value to the client, with no carriage return-line feed (CRLF) at the end.
      Parameters:
      l - the long value to send to the client
      Throws:
      IOException - if an input or output exception occurred
    • print

      public void print(float f) throws IOException
      Writes a float value to the client, with no carriage return-line feed (CRLF) at the end.
      Parameters:
      f - the float value to send to the client
      Throws:
      IOException - if an input or output exception occurred
    • print

      public void print(double d) throws IOException
      Writes a double value to the client, with no carriage return-line feed (CRLF) at the end.
      Parameters:
      d - the double value to send to the client
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println() throws IOException
      Writes a carriage return-line feed (CRLF) to the client.
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println(String s) throws IOException
      Writes a String to the client, followed by a carriage return-line feed (CRLF).
      Parameters:
      s - the String to write to the client
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println(boolean b) throws IOException
      Writes a boolean value to the client, followed by a carriage return-line feed (CRLF).
      Parameters:
      b - the boolean value to write to the client
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println(char c) throws IOException
      Writes a character to the client, followed by a carriage return-line feed (CRLF).
      Parameters:
      c - the character to write to the client
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println(int i) throws IOException
      Writes an int to the client, followed by a carriage return-line feed (CRLF) character.
      Parameters:
      i - the int to write to the client
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println(long l) throws IOException
      Writes a long value to the client, followed by a carriage return-line feed (CRLF).
      Parameters:
      l - the long value to write to the client
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println(float f) throws IOException
      Writes a float value to the client, followed by a carriage return-line feed (CRLF).
      Parameters:
      f - the float value to write to the client
      Throws:
      IOException - if an input or output exception occurred
    • println

      public void println(double d) throws IOException
      Writes a double value to the client, followed by a carriage return-line feed (CRLF).
      Parameters:
      d - the double value to write to the client
      Throws:
      IOException - if an input or output exception occurred
    • isReady

      public abstract boolean isReady()
      Checks if a non-blocking write will succeed. If this returns false, it will cause a callback to WriteListener.onWritePossible() when the buffer has emptied. If this method returns false no further data must be written until the container calls WriteListener.onWritePossible().
      Returns:
      true if data can be written, else false
      Since:
      Servlet 3.1
    • setWriteListener

      public abstract void setWriteListener(WriteListener listener)
      Sets the WriteListener for this ServletOutputStream and thereby switches to non-blocking IO. It is only valid to switch to non-blocking IO within async processing or HTTP upgrade processing.
      Parameters:
      listener - The non-blocking IO write listener
      Throws:
      IllegalStateException - If this method is called if neither async nor HTTP upgrade is in progress or if the WriteListener has already been set
      NullPointerException - If listener is null
      Since:
      Servlet 3.1