You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@deltaspike.apache.org by "Sean Flanigan (JIRA)" <ji...@apache.org> on 2016/08/23 02:42:20 UTC
[jira] [Commented] (DELTASPIKE-1198) BeanManagerProvider.isActive()
returns true after container shutdown
[ 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)