# Class IllegalStateException

java.lang.Object
java.lang.Throwable
java.lang.Exception
jakarta.jms.JMSException
jakarta.jms.IllegalStateException
com.sun.messaging.jms.IllegalStateException

All Implemented Interfaces:
  `com.sun.messaging.jmq.jmsclient.logging.Loggable, Serializable`

public class IllegalStateException extends jakarta.jms.IllegalStateException implements com.sun.messaging.jmq.jmsclient.logging.Loggable

This exception is thrown when a method is invoked at an illegal or inappropriate time or if the provider is not in an appropriate state for the requested operation. For example, this exception must be thrown if `Session.commit` is called on a non-transacted session. This exception is also called when a domain inappropriate method is called, such as calling `TopicSession.CreateQueueBrowser`.

See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IllegalStateException(String reason)`
  Constructs a `IllegalStateException` with the specified reason and with the error code defaulting to null.
  `IllegalStateException(String reason, String errorCode)`
  Constructs a `IllegalStateException` with the specified reason and error code.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `getLogState()`
  get logging state of this object.
  `void`
  `setLinkedException(Exception ex)`
  This method will also set the cause of the `IllegalStateException`.
  `void`
  `setLogState(boolean state)`
  set state to true if this object is logged.

  ### Methods inherited from class jakarta.jms.JMSException

  `getErrorCode, getLinkedException`

  ### Methods inherited from class Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### IllegalStateException

    public IllegalStateException(String reason, String errorCode)
    Constructs a `IllegalStateException` with the specified reason and error code.
    Parameters:
      `reason` - a description of the exception
      `errorCode` - a string specifying the vendor-specific error code

  - ### IllegalStateException

    public IllegalStateException(String reason)
    Constructs a `IllegalStateException` with the specified reason and with the error code defaulting to null.
    Parameters:
      `reason` - a description of the exception

- ## Method Details

  - ### setLinkedException

    public void setLinkedException(Exception ex)

    This method will also set the cause of the `IllegalStateException`. When a backtrace of the `IllegalStateException` is printed using `printStackTrace` using `printStackTrace` a backtrace of the cause will also get printed.

    Overrides:
      `setLinkedException` in class `jakarta.jms.JMSException`

  - ### setLogState

    public void setLogState(boolean state)
    set state to true if this object is logged.
    Specified by:
      `setLogState` in interface `com.sun.messaging.jmq.jmsclient.logging.Loggable`
    Parameters:
      `state` - boolean

  - ### getLogState

    public boolean getLogState()
    get logging state of this object.
    Specified by:
      `getLogState` in interface `com.sun.messaging.jmq.jmsclient.logging.Loggable`
    Returns:
      boolean true if this object is logged.