On Jul 29, 2008, at 10:34 AM, Vic Simkus wrote: > Scott Ferguson wrote: >>> Hello >>> >>> Is there any way to get the current application name/path without a >>> ServletContext? I'm looking for this is to add it to the logging >>> statements in a customized Acegi class that does not have direct >>> access >>> to any of the web application specifics. I realize that this >>> might be >>> Resin-specific, but I'm ok with that :) >>> >> >> HttpServletRequest has a getContextPath() that you can use. >> > <snip> > > Hi, Scott > > I don't have access to anything "web related" within the class/method. > Does Resin provide any way of extracting that sort of information > (shot > in a dark here) based on the current thread?
Oh. I see. Take a look at com.caucho.security.SecurityContext. You can try: HttpServletRequest request = (HttpServletRequest) com.caucho.security.SecurityContext.getProvider(); You could also try: WebBeansContainer webBeans = WebBeansContainer.getCurrent(); ServletContext webApp = webBeans.getByType(ServletContext.class); As Serge mentioned, you can also create a filter that stores the context in a ThreadLocal. If you do that, make absolutely certain you clear the ThreadLocal at the end of the filter otherwise very bad things will happen. (Basically GC and web-app reloading will break horribly.) -- Scott > > > Thanks > > -- > Vic Simkus > > Department of Neurology, UIC > 912 South Wood St. > Room 855N > Chicago IL 60612 > > > > > _______________________________________________ > resin-interest mailing list > resin-interest@caucho.com > http://maillist.caucho.com/mailman/listinfo/resin-interest _______________________________________________ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest