# Class ParserFactory

java.lang.Object
org.xml.sax.helpers.ParserFactory

@Deprecated(since="1.5") public class ParserFactory extends Object
Deprecated.
This class works with the deprecated `Parser` interface.
Java-specific class for dynamically loading SAX parsers.

Note: This class is designed to work with the now-deprecated SAX1 `Parser` class. SAX2 applications should use `XMLReaderFactory` instead.

ParserFactory is not part of the platform-independent definition of SAX; it is an additional convenience class designed specifically for Java XML application writers. SAX applications can use the static methods in this class to allocate a SAX parser dynamically at run-time based either on the value of the `org.xml.sax.parser' system property or on a string containing the class name.

Note that the application still requires an XML parser that implements SAX1.

Since:
  1.4, SAX 1.0

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static Parser`
  `makeParser()`
  Deprecated.
  Create a new SAX parser using the `org.xml.sax.parser' system property.
  `static Parser`
  `makeParser(String className)`
  Deprecated.
  Create a new SAX parser object using the class name provided.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Method Details

  - ### makeParser

    public static Parser makeParser() throws ClassNotFoundException, IllegalAccessException, InstantiationException, NullPointerException, ClassCastException
    Deprecated.
    Create a new SAX parser using the `org.xml.sax.parser' system property.

    The named class must exist and must implement the `Parser` interface.

    Returns:
      a new SAX parser
    Throws:
      `NullPointerException` - There is no value for the `org.xml.sax.parser' system property.
      `ClassNotFoundException` - The SAX parser class was not found (check your CLASSPATH).
      `IllegalAccessException` - The SAX parser class was found, but you do not have permission to load it.
      `InstantiationException` - The SAX parser class was found but could not be instantiated.
      `ClassCastException` - The SAX parser class was found and instantiated, but does not implement org.xml.sax.Parser.
    See Also:
      - `makeParser(java.lang.String)`
      - `Parser`

  - ### makeParser

    public static Parser makeParser(String className) throws ClassNotFoundException, IllegalAccessException, InstantiationException, ClassCastException
    Deprecated.
    Create a new SAX parser object using the class name provided.

    The named class must exist and must implement the `Parser` interface.

    Parameters:
      `className` - A string containing the name of the SAX parser class.
    Returns:
      a new SAX parser
    Throws:
      `ClassNotFoundException` - The SAX parser class was not found (check your CLASSPATH).
      `IllegalAccessException` - The SAX parser class was found, but you do not have permission to load it.
      `InstantiationException` - The SAX parser class was found but could not be instantiated.
      `ClassCastException` - The SAX parser class was found and instantiated, but does not implement org.xml.sax.Parser.
    See Also:
      - `makeParser()`
      - `Parser`