I'm not familiar with tynamo security but Kalle has pointed out it uses a HttpServletFilter to initialise some per thread values.
tapestry-atmosphere uses tapestry-offline to render component events. Unlike a normal request / response this doesn't go through the HttpServletRequestFilters etc. Take a look at the request processing diagram at the bottom of this page http://tapestry.apache.org/request-processing.html tapestry-offline invokes the org.apache.tapestry5.services.ComponentRequestHandler directly. Looking at the diagram, it looks like you have an opportunity to initialize the thread by contributing a ComponentEventFilter or a ComponentEventRequest filter. If you want to test for an offline request, you can check OfflineCookieGlobals.isCookiesStored() https://github.com/uklance/tapestry-offline/blob/master/src/main/java/org/lazan/t5/offline/services/OfflineCookieGlobals.java https://github.com/uklance/tapestry-offline/blob/master/src/main/java/org/lazan/t5/offline/services/internal/OfflineComponentRendererImpl.java On 5 September 2014 18:39, Kalle Korhonen <kalle.o.korho...@gmail.com> wrote: > On Fri, Sep 5, 2014 at 10:21 AM, Semen Vishniakov <vishnyako...@gmail.com> > wrote: > > > Seems that SecurityManager is not accessible because of component > > "offline" rendering. Are there any solutions to fix it? > > > > I haven't paid close attention to this thread but the securitymanager > certainly isn't accessible. It's perhaps quite understandable that the > security library requires certain request (thread) attributes to exist to > uniquely identify the user, just the same way a persistence framework > requires a session/entitymanager. It's relatively simple to bind the > securitymanager to the currently executing thread, see > > https://github.com/tynamo/tapestry-security/blob/master/src/main/java/org/tynamo/security/services/impl/SecurityConfiguration.java > . > That said, I'm not sure what would be the best invocation point to make it > happen with atmosphere/tapestry-offline. > > Kalle >