FYI: https://issues.jboss.org/browse/WELD-1504
Martin Dne 9.9.2013 19:20, Pete Muir napsal(a): > Agree with Mark entirely. There is no reason for Weld not support this AFAIK. > I think we agreed informally in CDI 1.1 that @Singleton is essentially > identical to @ApplicationScoped in behaviour. > > On 7 Sep 2013, at 18:22, Mark Struberg <strub...@yahoo.de> wrote: > >> The wording is not correct. >> >> Each JSR-299 Container must _fully_ implement the JSR-330 specification and >> pass the JSR-330 TCK. Thus each CDI Container MUST support >> javax.inject.Singleton. But it's actually not really defined in detail how >> this scope should behave. And the atinject and EE specs also define that >> @PostConstruct and @PreDestroy must work for @Singleton beans. So this is >> imo a bug. But otoh I personally would suggest to not use >> javax.inject.Singleton because of the aforementioned underspecified >> behaviout. >> >> LieGrue, >> strub >> >> >> >> >> ----- Original Message ----- >>> From: Martin Kouba <mko...@redhat.com> >>> To: Kristoffer Sjögren <sto...@gmail.com> >>> Cc: weld-dev@lists.jboss.org >>> Sent: Friday, 6 September 2013, 14:31 >>> Subject: Re: [weld-dev] PostConstruct & PreDestroy in Java SE >>> >>> Actually there's no singleton scope and corresponding built-in context >>> defined in the CDI spec. Though Weld API contains >>> org.jboss.weld.context.SingletonContext. Also the docs are outdated >>> (chapter 5.4. The singleton pseudo-scope). I think relevant classes >>> should be deprecated and the docs updated. >>> >>> With regard to lifecycle callbacks - Weld only invalidates application >>> context during shutdown right now [1]. >>> >>> Martin >>> >>> [1] >>> https://github.com/weld/core/blob/master/impl/src/main/java/org/jboss/weld/bootstrap/WeldRuntime.java#L56 >>> >>> Dne 6.9.2013 14:09, Kristoffer Sjögren napsal(a): >>>> Hi >>>> >>>> We're running Weld 2.0.3.Final in a Java SE environment and have >>>> encountered a precarious situation where it seems like Weld is not >>>> consistent in handling the lifecycle of singleton beans. >>>> >>>> We have singleton beans with @PostConstruct and @PreDestroy methods. >>>> During Weld.initialize() all @PostConstruct methods are called. But >>>> during @PreDestroy methods are never called during Weld.shutdown(). >>>> @PreDestroy is only called on beans which are @ApplicationScoped. >>>> >>>> Is this according to specification or a bug? >>>> >>>> Cheers, >>>> -Kristoffer >>>> >>>> >>>> _______________________________________________ >>>> weld-dev mailing list >>>> weld-dev@lists.jboss.org >>>> https://lists.jboss.org/mailman/listinfo/weld-dev >>>> >>> >>> _______________________________________________ >>> weld-dev mailing list >>> weld-dev@lists.jboss.org >>> https://lists.jboss.org/mailman/listinfo/weld-dev >>> >> >> _______________________________________________ >> weld-dev mailing list >> weld-dev@lists.jboss.org >> https://lists.jboss.org/mailman/listinfo/weld-dev > _______________________________________________ weld-dev mailing list weld-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/weld-dev