well, if we look closer to the AnalysisEngineProcessException interface, we will see that it accepts a key to a string located in the resource bundle (ResourceBundle containing the standard UIMA Exception messages), not the message itself. If I pass the message without adding it to the resources, I will get an exception about missing resource.