Package org.apache.uima

# Class UIMARuntimeException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
org.apache.uima.UIMARuntimeException

All Implemented Interfaces:
  `Serializable`, `I18nExceptionI`

Direct Known Subclasses:
  `CASAdminException`, `CASRuntimeException`, `LowLevelException`, `UIMA_IllegalArgumentException`, `UIMA_IllegalStateException`, `UIMA_UnsupportedOperationException`

public class UIMARuntimeException extends RuntimeException implements I18nExceptionI
This is the superclass for all unchecked exceptions in UIMA. It adds use of a "standard" bundle resource, if the subclasses don't define this.

`UIMAException` extends `InternationalizedException` for internationalization support. Since UIMA Exceptions are internationalized, the thrower does not supply a hardcoded message. Instead, the thrower specifies a key that identifies the message. That key is then looked up in a locale-specific `ResourceBundle` to find the actual message associated with this exception.

The thrower may specify the name of the `ResourceBundle` in which to find the exception message. Any name may be used. If the name is omitted, the resource bundle identified by `STANDARD_MESSAGE_CATALOG` will be used. This contains the standard UIMA exception messages.

See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `CAS_RELEASE_NOT_ALLOWED_WHILE_WAITING_FOR_UIMA_AS`
  Illegal invocation of casRelease() while awaiting response from a UIMA-AS Service.
  `static final String`
  `CAS_RELEASED_TO_WRONG_CAS_MANAGER`
  Message key for a standard UIMA exception message: CasManager.releaseCas(CAS) was called with a CAS that does not belong to this CasManager.
  `static final String`
  `COPY_CAS_RANGE_TYPE_NAMES_NOT_EQUAL`
  Message key for a standard UIMA exception message: CAS Copying of Feature "{0}": range names must be the same: source range name was "{1}", target range name was "{2}".
  `static final String`
  `DEFINE_CAS_POOL_CALLED_TWICE`
  Message key for a standard UIMA exception message: "The method CasManager.defineCasPool() was called twice by the same Analysis Engine ({0)}."
  `static final String`
  `ECORE_UNRESOLVED_PROXY`
  Message key for a standard UIMA exception message: "The Ecore model contained an unresolved proxy {0}."
  `static final String`
  `FEATURE_NOT_FOUND_DURING_CAS_COPY`
  Message key for a standard UIMA exception message: "Attempted to copy a Feature "{0}", which is not defined in the type system of the destination CAS."
  `static final String`
  `ILLEGAL_ADDING_OF_NEW_META_INFO_AFTER_CAS_DEFINED`
  Message key for a standard UIMA exception message: "Illegal adding of additional MetaData after CASes have been defined.
  `static final String`
  `ILLEGAL_CAS_COPY_TO_SAME_CAS`
  Message key for a standard UIMA exception message: It is not permitted to use CasCopier to copy a Cas to itself, even in another view.
  `static final String`
  `ILLEGAL_FS_FEAT_UPDATE`
  Message key for a standard UIMA exception message: Illegal update of indexed Feature Structure feature used as an key in one or more indexes
  `static final String`
  `INCOMPATIBLE_TAF_JNI_LIBRARY`
  Message key for a standard UIMA exception message: "Incompatible taf jni library {0}."
  `static final String`
  `INTERNAL_ERROR`
  Internal Error - should never happen.
  `static final String`
  `NOT_SUPPORTED_NO_HEAP_IN_UIMA_V3`
  This method depends on having a CAS Heap design, and is not support in UIMA Version 3 and later
  `static final String`
  `REQUESTED_TOO_MANY_CAS_INSTANCES`
  Message key for a standard UIMA exception message: "AnalysisComponent "{0}" requested more CASes ({1}) than defined in its getCasInstancesRequired() method ({2}).
  `static final String`
  `RESULT_SPEC_NULL`
  Message key for a standard UIMA exception message: Saved result specification is null; probable cause: Annotator overrode setResultSpecification(spec) but failed to call super.setResultSpecification(spec).
  `static final String`
  `STANDARD_MESSAGE_CATALOG`
  The name of the `ResourceBundle` containing the standard UIMA Exception messages.
  `static final String`
  `TYPE_NOT_FOUND_DURING_CAS_COPY`
  Message key for a standard UIMA exception message: "Attempted to copy a FeatureStructure of type "{0}", which is not defined in the type system of the destination CAS."
  `static final String`
  `UIMA_CONTEXT_NULL`
  Message key for a standard UIMA exception message: Saved UIMA context is null; probable cause: Annotator initialize(context) method failed to call super.initialize(context).
  `static final String`
  `UIMA_ECORE_NOT_FOUND`
  Message key for a standard UIMA exception message: "The Ecore model for the UIMA built-in types (uima.ecore) was not found in the classpath."
  `static final String`
  `UNSUPPORTED_CAS_COPY_TO_OR_FROM_BASE_CAS`
  Message key for a standard UIMA exception message: Unsupported invocation of CasCopier copyCasView, specifying a source or destination as a base CAS.
  `static final String`
  `UNSUPPORTED_CAS_INTERFACE`
  Message key for a standard UIMA exception message: "Unsupported CAS interface {0}."
  `static final String`
  `VIEW_NOT_PART_OF_CAS`
  Message key for a standard UIMA exception message: In CasCopier, the {0} view is doesn't belong to the original {0} CAS specified when creating the CasCopier instance

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `UIMARuntimeException()`
  Creates a new exception with a null message.
  `UIMARuntimeException(String aMessageKey, Object... aArguments)`
  Creates a new exception with a message from the `STANDARD_MESSAGE_CATALOG`.
  `UIMARuntimeException(String messageBundle, String messageKey, Object[] arguments)`
  `UIMARuntimeException(Throwable aCause)`
  Creates a new exception with the specified cause and a null message.
  `UIMARuntimeException(Throwable aCause, String aMessageKey, Object... aArguments)`
  Creates a new exception with the specified message and cause.
  `UIMARuntimeException(Throwable aCause, String messageBundle, String messageKey, Object... aArguments)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object[]`
  `getArguments()`
  Gets the arguments to this exception's message.
  `Throwable`
  `getCause()`
  Gets the cause of this Exception.
  `String`
  `getLocalizedMessage()`
  Gets the localized detail message for this exception.
  `String`
  `getMessage()`
  Due to the fact that superclass definitions override any default methods, these next must be in the class definitions as they override other supertype methods.
  `String`
  `getMessageKey()`
  Gets the identifier for this exception's message.
  `String`
  `getResourceBundleName()`
  Gets the base name of the resource bundle in which the message for this exception is located.
  `Throwable`
  `initCause(Throwable cause)`

  ### Methods inherited from class java.lang.Throwable

  `addSuppressed, fillInStackTrace, getStackTrace, getSuppressed, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods inherited from class java.lang.Object

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

  ### Methods inherited from interface org.apache.uima.I18nExceptionI

  `getLocalizedMessage, hasMessageKey`

- ## Field Details

  - ### STANDARD_MESSAGE_CATALOG

    public static final String STANDARD_MESSAGE_CATALOG
    The name of the `ResourceBundle` containing the standard UIMA Exception messages.
    See Also:
      - Constant Field Values

  - ### CAS_RELEASED_TO_WRONG_CAS_MANAGER

    public static final String CAS_RELEASED_TO_WRONG_CAS_MANAGER
    Message key for a standard UIMA exception message: CasManager.releaseCas(CAS) was called with a CAS that does not belong to this CasManager.
    See Also:
      - Constant Field Values

  - ### CAS_RELEASE_NOT_ALLOWED_WHILE_WAITING_FOR_UIMA_AS

    public static final String CAS_RELEASE_NOT_ALLOWED_WHILE_WAITING_FOR_UIMA_AS
    Illegal invocation of casRelease() while awaiting response from a UIMA-AS Service.
    See Also:
      - Constant Field Values

  - ### UIMA_ECORE_NOT_FOUND

    public static final String UIMA_ECORE_NOT_FOUND
    Message key for a standard UIMA exception message: "The Ecore model for the UIMA built-in types (uima.ecore) was not found in the classpath."
    See Also:
      - Constant Field Values

  - ### ECORE_UNRESOLVED_PROXY

    public static final String ECORE_UNRESOLVED_PROXY
    Message key for a standard UIMA exception message: "The Ecore model contained an unresolved proxy {0}."
    See Also:
      - Constant Field Values

  - ### REQUESTED_TOO_MANY_CAS_INSTANCES

    public static final String REQUESTED_TOO_MANY_CAS_INSTANCES
    Message key for a standard UIMA exception message: "AnalysisComponent "{0}" requested more CASes ({1}) than defined in its getCasInstancesRequired() method ({2}). It is possible that the AnalysisComponent is not properly releasing CASes when it encounters an error."
    See Also:
      - Constant Field Values

  - ### DEFINE_CAS_POOL_CALLED_TWICE

    public static final String DEFINE_CAS_POOL_CALLED_TWICE
    Message key for a standard UIMA exception message: "The method CasManager.defineCasPool() was called twice by the same Analysis Engine ({0)}."
    See Also:
      - Constant Field Values

  - ### UNSUPPORTED_CAS_INTERFACE

    public static final String UNSUPPORTED_CAS_INTERFACE
    Message key for a standard UIMA exception message: "Unsupported CAS interface {0}."
    See Also:
      - Constant Field Values

  - ### INCOMPATIBLE_TAF_JNI_LIBRARY

    public static final String INCOMPATIBLE_TAF_JNI_LIBRARY
    Message key for a standard UIMA exception message: "Incompatible taf jni library {0}."
    See Also:
      - Constant Field Values

  - ### TYPE_NOT_FOUND_DURING_CAS_COPY

    public static final String TYPE_NOT_FOUND_DURING_CAS_COPY
    Message key for a standard UIMA exception message: "Attempted to copy a FeatureStructure of type "{0}", which is not defined in the type system of the destination CAS."
    See Also:
      - Constant Field Values

  - ### FEATURE_NOT_FOUND_DURING_CAS_COPY

    public static final String FEATURE_NOT_FOUND_DURING_CAS_COPY
    Message key for a standard UIMA exception message: "Attempted to copy a Feature "{0}", which is not defined in the type system of the destination CAS."
    See Also:
      - Constant Field Values

  - ### COPY_CAS_RANGE_TYPE_NAMES_NOT_EQUAL

    public static final String COPY_CAS_RANGE_TYPE_NAMES_NOT_EQUAL
    Message key for a standard UIMA exception message: CAS Copying of Feature "{0}": range names must be the same: source range name was "{1}", target range name was "{2}".
    See Also:
      - Constant Field Values

  - ### UIMA_CONTEXT_NULL

    public static final String UIMA_CONTEXT_NULL
    Message key for a standard UIMA exception message: Saved UIMA context is null; probable cause: Annotator initialize(context) method failed to call super.initialize(context).
    See Also:
      - Constant Field Values

  - ### RESULT_SPEC_NULL

    public static final String RESULT_SPEC_NULL
    Message key for a standard UIMA exception message: Saved result specification is null; probable cause: Annotator overrode setResultSpecification(spec) but failed to call super.setResultSpecification(spec).
    See Also:
      - Constant Field Values

  - ### VIEW_NOT_PART_OF_CAS

    public static final String VIEW_NOT_PART_OF_CAS
    Message key for a standard UIMA exception message: In CasCopier, the {0} view is doesn't belong to the original {0} CAS specified when creating the CasCopier instance
    See Also:
      - Constant Field Values

  - ### UNSUPPORTED_CAS_COPY_TO_OR_FROM_BASE_CAS

    public static final String UNSUPPORTED_CAS_COPY_TO_OR_FROM_BASE_CAS
    Message key for a standard UIMA exception message: Unsupported invocation of CasCopier copyCasView, specifying a source or destination as a base CAS.
    See Also:
      - Constant Field Values

  - ### ILLEGAL_CAS_COPY_TO_SAME_CAS

    public static final String ILLEGAL_CAS_COPY_TO_SAME_CAS
    Message key for a standard UIMA exception message: It is not permitted to use CasCopier to copy a Cas to itself, even in another view.
    See Also:
      - Constant Field Values

  - ### ILLEGAL_ADDING_OF_NEW_META_INFO_AFTER_CAS_DEFINED

    public static final String ILLEGAL_ADDING_OF_NEW_META_INFO_AFTER_CAS_DEFINED
    Message key for a standard UIMA exception message: "Illegal adding of additional MetaData after CASes have been defined. Likely cause is the reuse of a Resource Manager object for a different pipeline, after it has already been initialized."
    See Also:
      - Constant Field Values

  - ### ILLEGAL_FS_FEAT_UPDATE

    public static final String ILLEGAL_FS_FEAT_UPDATE
    Message key for a standard UIMA exception message: Illegal update of indexed Feature Structure feature used as an key in one or more indexes
    See Also:
      - Constant Field Values

  - ### NOT_SUPPORTED_NO_HEAP_IN_UIMA_V3

    public static final String NOT_SUPPORTED_NO_HEAP_IN_UIMA_V3
    This method depends on having a CAS Heap design, and is not support in UIMA Version 3 and later
    See Also:
      - Constant Field Values

  - ### INTERNAL_ERROR

    public static final String INTERNAL_ERROR
    Internal Error - should never happen. Nested exception if present: {0}
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### UIMARuntimeException

    public UIMARuntimeException()
    Creates a new exception with a null message.

  - ### UIMARuntimeException

    public UIMARuntimeException(Throwable aCause)
    Creates a new exception with the specified cause and a null message.
    Parameters:
      `aCause` - the original exception that caused this exception to be thrown, if any

  - ### UIMARuntimeException

    public UIMARuntimeException(String aMessageKey, Object... aArguments)
    Creates a new exception with a message from the `STANDARD_MESSAGE_CATALOG`.
    Parameters:
      `aMessageKey` - an identifier that maps to the message for this exception. The message may contain placeholders for arguments as defined by the `MessageFormat` class.
      `aArguments` - The arguments to the message. `null` may be used if the message has no arguments.

  - ### UIMARuntimeException

    public UIMARuntimeException(String messageBundle, String messageKey, Object[] arguments)

  - ### UIMARuntimeException

    public UIMARuntimeException(Throwable aCause, String messageBundle, String messageKey, Object... aArguments)

  - ### UIMARuntimeException

    public UIMARuntimeException(Throwable aCause, String aMessageKey, Object... aArguments)
    Creates a new exception with the specified message and cause.
    Parameters:
      `aMessageKey` - an identifier that maps to the message for this exception. The message may contain placeholders for arguments as defined by the `MessageFormat` class.
      `aArguments` - The arguments to the message. `null` may be used if the message has no arguments.
      `aCause` - the original exception that caused this exception to be thrown, if any

- ## Method Details

  - ### getResourceBundleName

    public String getResourceBundleName()
    Gets the base name of the resource bundle in which the message for this exception is located.
    Specified by:
      `getResourceBundleName` in interface `I18nExceptionI`
    Returns:
      the resource bundle base name. May return `null` if this exception has no message.

  - ### getMessageKey

    public String getMessageKey()
    Gets the identifier for this exception's message. This identifier can be looked up in this exception's `ResourceBundle` to get the locale-specific message for this exception.
    Specified by:
      `getMessageKey` in interface `I18nExceptionI`
    Returns:
      the resource identifier for this exception's message. May return `null` if this exception has no message.

  - ### getArguments

    public Object[] getArguments()
    Gets the arguments to this exception's message. Arguments allow a `InternationalizedRuntimeException` to have a compound message, made up of multiple parts that are concatenated in a language-neutral way.
    Specified by:
      `getArguments` in interface `I18nExceptionI`
    Returns:
      the arguments to this exception's message.

  - ### getCause

    public Throwable getCause()
    Gets the cause of this Exception.
    Specified by:
      `getCause` in interface `I18nExceptionI`
    Overrides:
      `getCause` in class `Throwable`
    Returns:
      the Throwable that caused this Exception to occur, if any. Returns `null` if there is no such cause.

  - ### initCause

    public Throwable initCause(Throwable cause)
    Overrides:
      `initCause` in class `Throwable`

  - ### getMessage

    public String getMessage()
    Description copied from interface: `I18nExceptionI`
    Due to the fact that superclass definitions override any default methods, these next must be in the class definitions as they override other supertype methods.
    Specified by:
      `getMessage` in interface `I18nExceptionI`
    Overrides:
      `getMessage` in class `Throwable`
    Returns:
      The message of the exception. Useful for including the text in another exception.

  - ### getLocalizedMessage

    public String getLocalizedMessage()
    Gets the localized detail message for this exception. This uses the default Locale for this JVM. A Locale may be specified using `I18nExceptionI.getLocalizedMessage(Locale)`.
    Specified by:
      `getLocalizedMessage` in interface `I18nExceptionI`
    Overrides:
      `getLocalizedMessage` in class `Throwable`
    Returns:
      this exception's detail message, localized for the default Locale.