Servlet::Util::Exception - exception base class

- NAME
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
- CLASS METHODS
- METHODS
- EXCEPTION SUBCLASSESS
- SEE ALSO
- AUTHOR

# NAME

Servlet::Util::Exception - exception base class

# SYNOPSIS

      eval {
          Servlet::Util::Exception->throw("oops");
      };

      if ($@) {
          warn "caught exception: $@\n";
      }

# DESCRIPTION

This is a base class for exceptions. It extends Exception::Class::Base. See Exception::Class for a full list of inherited methods.

There is only one exception to the inherited API: tracing is on by default. This means that a stack trace will be created when an exception is thrown. By way of comparison to java.lang.Throwable, it's as if `fillInStackTrace()` is automatically called inside `throw()`. To selectively disable tracing for a subclass, do the following:

      My::Exception::do_trace(0);

# CONSTRUCTOR

`new($msg)`
  Construct an instance with the given error message.

  Exceptions are rarely directly constructed. Usually they are constructed and thrown in one call to `throw()`.

  Parameters:

  $msg
    the error message

# CLASS METHODS

`throw($msg)`
  Constructs an instance with the given error essage and then `die()`s.

  Parameters:

  $msg
    the error message

# METHODS

`getMessage()`
  Returns the error message.

`toString()`
  Returns a short description of the exception, including the stack trace if the exception has been thrown.

# EXCEPTION SUBCLASSESS

These commonly encountered exceptions are provided as utilities.

Servlet::Util::IOException
  Thrown to indicate than an I/O exception of some sort has occurred.

Servlet::Util::IllegalArgumentException
  Thrown to indicate that a method has been passed an illegal or inappropriate argument.

Servlet::Util::IllegalStateException
  Thrown to indicate that a method has been invoked at an illegal or inappropriate time.

Servlet::Util::IndexOutOfBoundsException
  Thrown to indicate that an index of some sort (such as to an array) is out of range.

Servlet::Util::UndefReferenceException
  Thrown to indicate that undef was used in a case where a value is required.

Servlet::Util::UnsupportedEncodingException
  Thrown to indicate that the chosen character encoding is unsupported by the environment (most commonly encountered during character conversions on byte streams).

# SEE ALSO

the Exception::Class manpage

# AUTHOR

Brian Moseley, bcm@maz.org