Hi Sergey It is working, the JAX-RS resource is now treated as singleton. I also see that @Singleton is no longer available as part of the cxf frontend rs module. Will you be releasing the 3.1.11 version soon ?
Thanks for your help, Aruna. On Mon, Mar 13, 2017 at 8:43 PM, Sergey Beryozkin <[email protected]> wrote: > I deployed the related CXF 3.1.11-SNAPSHOT modules, so please try when you > get a chance... > > Cheers, Sergey > > On 13/03/17 15:11, Sergey Beryozkin wrote: > >> Hi >> >> We did some work on the master (3.2.0-SNAPSHOT) for overriding the >> default lifecycle of Application.getClasses, using the existing >> jaxrs.scope servlet parameter, as part of the SSE work, and I pushed >> most of those updated to 3.1.11-SNAPSHOT. >> However that is not enough in your case, so I just tweaked a code a bit >> more, if you have an empty Application with its getProperties() method >> returning "jaxrs.scope"="singleton" then the (auto-discovered) >> Application.getClasses will be treated as singletons even if they are >> not providers but the resource classes. >> >> I could've also added a CXF specific @Singleton annotation but the >> Application.getProperties() is less intrusive and is portable (this >> property will simply be ignored with other implementations), while we >> also plan with Andriy to introduce a proper support for the alternative >> injection strategies (so as to cover for ex CDI Singleton, etc) >> >> Cheers, Sergey >> >> On 13/03/17 11:21, Aruna Kalagnanam wrote: >> >>> Hi Sergey >>> >>> Yes, I'm using the cxf http-sci module and no web.xml. >>> >>> Thanks, >>> Aruna. >>> >>> On Mar 13, 2017 16:23, "Sergey Beryozkin" <[email protected]> wrote: >>> >>> Hi >>>> >>>> On 12/03/17 06:37, Aruna Kalagnanam wrote: >>>> >>>> Hello >>>>> >>>>> I'm using Apache CXF 3.1.9 with Tomcat 7. I have written a JAX-RS >>>>> application with a JAX-RS resource and subclassed Application class. I >>>>> realized that the JAX-RS resource is per-request scoped by default. I >>>>> would >>>>> like to make it application scoped. Using @Singleton doesnt work. >>>>> >>>>> I could override the getSingletons() method of my Application subclass, >>>>> but >>>>> doing that turns off auto scanning of @Provider classes. Auto >>>>> scanning is >>>>> important for my application because I'm using a library which has >>>>> filters >>>>> that have to be included automatically by scanning. >>>>> >>>>> How can I create a singleton JAX-RS resource and still use auto >>>>> scanning >>>>> of >>>>> @Provider capability. >>>>> >>>>> >>>> Can you explain please, how is this Application registered, do you use a >>>> cxf-rt-rs-http-sci module which ships ServletContextInitializer ? >>>> >>>> Thanks, Sergey >>>> >>>> >>>>> Thanks, >>>>> Aruna. >>>>> >>>>> >>>>> >>>> >>> >> >> > > -- > Sergey Beryozkin > > Talend Community Coders > http://coders.talend.com/ >
