## javax.portlet
Class UnavailableException

    java.lang.Object
      java.lang.Throwable
          java.lang.Exception
              javax.portlet.PortletException
                  javax.portlet.UnavailableException

All Implemented Interfaces:
  java.io.Serializable

    public class UnavailableException

extends PortletException

The portlet should throw the `UnavailableException` when the portlet is either temporarily or permanently unavailable to handle requests.

See Also:
  Serialized Form

Constructor Summary
`UnavailableException(java.lang.String text)` Constructs a new exception with a descriptive message indicating that the portlet is permanently unavailable.
`UnavailableException(java.lang.String text, int seconds)` Constructs a new exception with a descriptive message indicating that the portlet is temporarily unavailable and giving an estimate of how long it will be unavailable.

Method Summary
`int` `getUnavailableSeconds()` Returns the time in seconds for which the portlet can be expected to be unavailable.
`boolean` `isPermanent()` Returns a `boolean` indicating whether the portlet is permanently unavailable.

Methods inherited from class java.lang.Throwable
`fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

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

Constructor Detail

### UnavailableException

    public UnavailableException(java.lang.String text)

  Constructs a new exception with a descriptive message indicating that the portlet is permanently unavailable.

  Parameters:
    `text` - a `String` specifying the descriptive message

### UnavailableException

    public UnavailableException(java.lang.String text,
                                int seconds)

  Constructs a new exception with a descriptive message indicating that the portlet is temporarily unavailable and giving an estimate of how long it will be unavailable.

  In some cases, the portlet cannot make an estimate. For example, the portlet might know that a server it needs is not running, but it might not be able to report how long it will take to be restored to functionality. This can be indicated with a negative or zero value for the `seconds` argument.

  Parameters:
    `text` - a `String` specifying the descriptive message. This message can be written to a log file or displayed for the user.
    `seconds` - an integer specifying the number of seconds for which the portlet expects to be unavailable; if this is zero or negative, it indicates that the portlet cannot make an estimate.

Method Detail

### isPermanent

    public boolean isPermanent()

  Returns a `boolean` indicating whether the portlet is permanently unavailable. If so, something is wrong with the portlet, and the system administrator must take some corrective action.

  Returns:
    `true` if the portlet is permanently unavailable; `false` if the portlet is temporarily unavailable.

### getUnavailableSeconds

    public int getUnavailableSeconds()

  Returns the time in seconds for which the portlet can be expected to be unavailable.

  If the portlet is called again while it is still unavailable, it indicates the same time estimate. No effort is made to correct for the time elapsed since the exception was first reported.

  If this method returns zero or a negative number, the portlet is permanently unavailable or cannot provide an estimate of how long it will be unavailable.

  Returns:
    an integer specifying the number of seconds the portlet will be temporarily unavailable, or zero or a negative number if the portlet is permanently unavailable or cannot make an estimate.

Copyright © 2010. All Rights Reserved.