No it makes perfect sense in _some_ cases to use Contexts.getRequestContxt() as 
BeanManager.getContext(RequestScoped.class) might throw a 
ContextNotActiveException.

LieGrue,
strub

  

> Am 07.05.2015 um 17:02 schrieb Jozef Hartinger <[email protected]>:
> 
> Hi Emily,
> 
> you can submit TCK challenges direcly by opening JIRA issues at 
> https://issues.jboss.org/browse/CDITCK.
> 
> As for this particular one I am not sure why the Contexts.getRequestContext() 
> method is still used in the tests. 
> BeanManager.getContext(RequestScoped.class) should IMHO be used instead.
> 
> Jozef
> 
> On 05/07/2015 01:50 PM, Emily Jiang wrote:
>> 
>> I am trying to run cdi 1.2 tck:
>> In test: 
>> org.jboss.cdi.tck.tests.event.observer.conditional.ConditionalObserverTest
>> Method: testConditionalObserverMethodNotInvokedIfNoActiveContext 
>> 
>> I got this following failure:
>> java.lang.IllegalStateException: Singleton not set for STATIC_INSTANCE => 
>> [29478a84-0d13-49f5-b140-34a6cd92ab71, 0dd30cdc-10f4-4ec0-a8c5-d8fa3a82fc25, 
>> bbc59ac1-4747-49d0-96a3-12f0d4987829, 3459400f-dd41-473c-a4db-94d60fe5899b, 
>> 10795c17-3611-41d5-b7ca-497709c2ad53, f10c929f-5314-44ba-aeb4-99888f6b4611, 
>> a22c5a8f-bf26-4f54-a847-d1c7b5532426, 00c3de8d-65d9-4ba7-804a-9c3c515e59d7, 
>> d7c8be7e-8b52-4c88-97e1-5ba6925fb794, 72ac8455-7c21-4090-b7ec-13d70c75a7d7, 
>> dbe7255d-5485-4c2a-b547-058815660144, d3bb3d00-3214-48a5-b662-499010197e12]
>> at 
>> org.jboss.weld.bootstrap.api.helpers.RegistrySingletonProvider$RegistrySingleton.get(RegistrySingletonProvider.java:28)
>> at org.jboss.weld.Container.instance(Container.java:55)
>> at org.jboss.weld.tck.ContextsImpl.getRequestContext(ContextsImpl.java:33)
>> at org.jboss.weld.tck.ContextsImpl.getRequestContext(ContextsImpl.java:30)
>> at 
>> org.jboss.cdi.tck.tests.event.observer.conditional.ConditionalObserverTest.testConditionalObserverMethodNotInvokedIfNoActiveContext(ConditionalObserverTest.java:96)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> 
>>   From the stack trace, two strange things are happening:
>> 
>> 1) the TCK code is calling into org.jboss.weld.Container which is an 
>> internal Weld class which should not be visible to application so the 
>> application should not need to load them
>> 2) the TCK code is calling Container.instance() with no arguments, which 
>> should not be called. We always use Container.instance(contextId), in 
>> accordance with Weld doc A.3.2.4. Singleton SPI (this should be used in OSGi 
>> environment).
>> 
>> Can someone help to explain why the tck test was done this way? Is it 
>> accurate?
>> 
>> -- 
>> Thanks
>> Emily
>> =================
>> Emily Jiang
>> [email protected]
>> 
>> 
>> _______________________________________________
>> weld-dev mailing list
>> 
>> [email protected]
>> https://lists.jboss.org/mailman/listinfo/weld-dev
> 
> _______________________________________________
> weld-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/weld-dev


_______________________________________________
weld-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/weld-dev

Reply via email to