## javax.servlet
Class ServletInputStream

    java.lang.Object
      java.io.InputStream
          javax.servlet.ServletInputStream

All Implemented Interfaces:
  Closeable

Direct Known Subclasses:
  Ajp13Parser.Input, HttpParser.Input

    public abstract class ServletInputStream

extends InputStream

Provides an input stream for reading binary data from a client request, including an efficient `readLine` method for reading data one line at a time. With some protocols, such as HTTP POST and PUT, a `ServletInputStream` object can be used to read data sent from the client.

A `ServletInputStream` object is normally retrieved via the `ServletRequest.getInputStream()` method.

This is an abstract class that a servlet container implements. Subclasses of this class must implement the `java.io.InputStream.read()` method.

Author:
  Various
See Also:
  `ServletRequest`

Constructor Summary
`protected` `ServletInputStream()` Does nothing, because this is an abstract class.

Method Summary
`int` `readLine(byte[] b, int off, int len)` Reads the input stream, one line at a time.

Methods inherited from class java.io.InputStream
`available, close, mark, markSupported, read, read, read, reset, skip`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ServletInputStream

    protected ServletInputStream()

  Does nothing, because this is an abstract class.

Method Detail

### readLine

    public int readLine(byte[] b,
                        int off,
                        int len)
                 throws IOException

  Reads the input stream, one line at a time. Starting at an offset, reads bytes into an array, until it reads a certain number of bytes or reaches a newline character, which it reads into the array as well.

  This method returns -1 if it reaches the end of the input stream before reading the maximum number of bytes.

  Parameters:
    `b` - an array of bytes into which data is read
    `off` - an integer specifying the character at which this method begins reading
    `len` - an integer specifying the maximum number of bytes to read
  Returns:
    an integer specifying the actual number of bytes read, or -1 if the end of the stream is reached
  Throws:
    `IOException` - if an input or output exception has occurred

Copyright © 2007 Mort Bay Consulting. All Rights Reserved.