Class ServletOutputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable

    public abstract class ServletOutputStream
    extends java.io.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:
    ServletResponse
    • Constructor Summary

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

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      abstract boolean isReady()
      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 print​(java.lang.String s)
      Writes a String to the client, without a carriage return-line feed (CRLF) character at the end.
      void println()
      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 println​(java.lang.String s)
      Writes a String to the client, followed by a carriage return-line feed (CRLF).
      abstract void setWriteListener​(WriteListener listener)
      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 Detail

      • ServletOutputStream

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

      • print

        public void print​(java.lang.String s)
                   throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • print

        public void print​(boolean b)
                   throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • print

        public void print​(char c)
                   throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • print

        public void print​(int i)
                   throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • print

        public void print​(long l)
                   throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • print

        public void print​(float f)
                   throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • print

        public void print​(double d)
                   throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • println

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

        public void println​(java.lang.String s)
                     throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • println

        public void println​(boolean b)
                     throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • println

        public void println​(char c)
                     throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • println

        public void println​(int i)
                     throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • println

        public void println​(long l)
                     throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • println

        public void println​(float f)
                     throws java.io.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:
        java.io.IOException - if an input or output exception occurred
      • println

        public void println​(double d)
                     throws java.io.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:
        java.io.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:
        java.lang.IllegalStateException - If this method is called if neither async nor HTTP upgrade is in progress or if the WriteListener has already been set
        java.lang.NullPointerException - If listener is null
        Since:
        Servlet 3.1