On 06/06/2013 09:41 AM, Korbinian Bachl wrote:
Sadly the weld 2 people didn't think about backwards
compatibility in
that position (why not just throw a big warning?);
Let's see what the
specification says about the method:
"Throws:
java.lang.IllegalStateException - if called during application
initialization, before the AfterDeploymentValidation event is fired."
That answers your question. However, the CDI EG kind of anticipated
problems with legacy extensions not using the SPI properly and added the
following statement:
"The container is permitted to define a non-portable mode in which
getBeans(String) may be called from an observer of the
AfterBeanDiscovery event."
The non-portable mode is not in Weld yet but will be since 2.0.2.Final.
The easiest thing you can do is to repackage solder and disable the
org.jboss.solder.exception.control.extension.CatchExtension extension
(assuming you use Solder for other parts than Catch).
Jozef