[
https://issues.apache.org/jira/browse/DELTASPIKE-1198?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15432019#comment-15432019
]
Sean Flanigan commented on DELTASPIKE-1198:
-------------------------------------------
FWIW, I was able to reconstruct the stack trace in the debugger:
{noformat}
java.lang.IllegalStateException: Singleton not set for STATIC_INSTANCE => []
at
org.jboss.weld.bootstrap.api.helpers.RegistrySingletonProvider$RegistrySingleton.get(RegistrySingletonProvider.java:28)
at org.jboss.weld.Container.instance(Container.java:65)
at org.jboss.weld.Container.instance(Container.java:69)
at
org.jboss.weld.bean.builtin.BeanManagerProxy.checkContainerState(BeanManagerProxy.java:234)
at
org.jboss.weld.bean.builtin.BeanManagerProxy.checkContainerState(BeanManagerProxy.java:247)
at
org.jboss.weld.bean.builtin.BeanManagerProxy.getBeans(BeanManagerProxy.java:96)
at
org.apache.deltaspike.core.api.provider.BeanProvider.getContextualReference(BeanProvider.java:144)
at
org.apache.deltaspike.core.api.provider.BeanProvider.getContextualReference(BeanProvider.java:121)
at
org.apache.deltaspike.beanvalidation.impl.CDIAwareConstraintValidatorFactory.getInstance(CDIAwareConstraintValidatorFactory.java:61)
at
org.zanata.test.TestingConstraintValidatorFactory.getInstance(TestingConstraintValidatorFactory.java:54)
...
{noformat}
(Weld SE 2.3.2.Final, DeltaSpike 1.7.0)
NB: TestingConstraintValidatorFactory simply checks
BeanManagerProvider.isActive() before calling
CDIAwareConstraintValidatorFactory.getInstance().
> BeanManagerProvider.isActive() returns true after container shutdown
> --------------------------------------------------------------------
>
> Key: DELTASPIKE-1198
> URL: https://issues.apache.org/jira/browse/DELTASPIKE-1198
> Project: DeltaSpike
> Issue Type: Bug
> Components: Core
> Affects Versions: 1.7.0, 1.7.2
> Reporter: Sean Flanigan
>
> While trying to implement DELTASPIKE-1197 I found that
> {{BeanManagerProvider.isActive()}} returns true after container shutdown.
> The javadocs for {{isActive()}} say "@return true if the BeanManagerProvider
> is ready to be used", but when it is in this state, the BeanManagerProvider
> can't actually be used because the CDI container is not active.
> In the case of Weld, when {{BeanProvider.getContextualReference()}} was
> called I got errors like "java.lang.IllegalStateException: Singleton not set
> for STATIC_INSTANCE => []". There was no stack trace, but that message comes
> from Weld's RegistrySingletonProvider.java.
> It would seem reasonable to reset bmpSingleton to null during
> cleanupStoredBeanManagerOnShutdown, but for some reason this breaks a lot of
> tests.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)