Class 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:
  • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • UNSUPPORTED_CAS_INTERFACE

      public static final String UNSUPPORTED_CAS_INTERFACE
      Message key for a standard UIMA exception message: "Unsupported CAS interface {0}."
      See Also:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • INTERNAL_ERROR

      public static final String INTERNAL_ERROR
      Internal Error - should never happen. Nested exception if present: {0}
      See Also:
  • 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.