Re: freemarker Struts 2 Thread Lock Issue

Attila Szegedi <[email protected]>
Newsgroups gmane.comp.web.freemarker.user
Message-ID <[email protected]>
Yup, I fixed a lot of problems in caching concurrent performance in  
2.3.13, it's worth upgrading to latest.
Struts2 seems to be stuck in shipping 2.3.8 for ages.

Attila.

On 2009.05.20., at 12:24, Santosh Sharma wrote:

> Hi Daniel ,
>
> I m using version 3.2.8 . I looked at Freemarker site and they have  
> done a lot of fixes in cache in version 3.2.13 . I m upgrading to  
> latest 3.2.15 and will test with new version .
>
> Thanks
> San
> -----Daniel Dekany <[email protected]> wrote: -----
>
> To: sanrosh95 <[email protected]>
> From: Daniel Dekany <[email protected]>
> Date: 05/20/2009 11:14AM
> cc: [email protected]
> Subject: Re: [FreeMarker-user] freemarker Struts 2 Thread Lock Issue
>
> Wednesday, May 20, 2009, 4:47:23 PM, sanrosh95 wrote:
> >
> > Hi ,
> >
> > Is there a way to disable the caching in Freemarker
>
> Setting maximum cache size to 0 ("cache_storage" setting to
> ""strong:0, soft:0"") should do that effectively (I didn't tried it)
> or to plug-in a dummy freemarker.cache.CacheStorage implementation
> with the sme setting (use a value like
> "com.example.YourDummyCacheStorage").
>
> > and what will be its impact on Performance .
>
> It has serious performance impact, as without cache getting a template
> includes reading it from the HDD (or from the OS disk cache, of
> course...) plus parsing the template to Abstract Syntax Tree.
>
> > I Saw a lot of threads hanging with below kind of stack .
>
> That's a can easily be a critical bug if it's indeed the mistake of
> FreeMarker... What FreeMarker version does ${.version} print?
>
> > Thanks
> > San
> >
> > "ExecuteThread: '22' for queue: 'default'" daemon prio=5  
> tid=0x00286df8
> > nid=0x20 waiting for monitor entry [0x655f9000..0x655ffc30]
> >         at
> > freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:245)
> >         - waiting to lock <0x959b51d0> (a  
> freemarker.cache.MruCacheStorage)
> >         at
> > freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:229)
> >         at
> > freemarker.template.Configuration.getTemplate(Configuration.java: 
> 487)
> >         at
> >  
> freemarker.core.Environment.getTemplateForInclusion(Environment.java: 
> 1357)
> >         at freemarker.core.Include.accept(Include.java:143)
> >         at freemarker.core.Environment.visit(Environment.java:196)
> >         at freemarker.core.MixedContent.accept(MixedContent.java:92)
> >         at freemarker.core.Environment.visit(Environment.java:196)
> >         at freemarker.core.Environment.process(Environment.java:176)
> >         at freemarker.template.Template.process(Template.java:232)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .components 
> .template 
> .FreemarkerTemplateEngine 
> .renderTemplate(FreemarkerTemplateEngine.java:168)
> >         at
> > org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:530)
> >         at
> >  
> org.apache.struts2.components.ClosingUIBean.start(ClosingUIBean.java: 
> 58)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
> >         at
> >  
> jsp_servlet 
> ._portlet._jsp.__DisplayPortlet._jspService(__DisplayPortlet.java:286)
> >         at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
> >         at
> > weblogic.servlet.internal.ServletStubImpl 
> $ServletInvocationAction.run(ServletStubImpl.java:1006)
> >         at
> >  
> weblogic 
> .servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java: 
> 419)
> >         at
> > weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> com 
> .sherwin 
> .portal 
> .user.action.AuthenticationFilter.doFilter(AuthenticationFilter.java: 
> 259)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> org 
> .displaytag 
> .filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java: 
> 125)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java: 
> 644)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java: 
> 423)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .dispatcher 
> .ServletDispatcherResult.doExecute(ServletDispatcherResult.java:141)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:178)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .DefaultActionInvocation.executeResult(DefaultActionInvocation.java: 
> 348)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 253)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .DefaultWorkflowInterceptor 
> .doIntercept(DefaultWorkflowInterceptor.java:221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .validator 
> .ValidationInterceptor.doIntercept(ValidationInterceptor.java:150)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .interceptor 
> .validation 
> .AnnotationValidationInterceptor 
> .doIntercept(AnnotationValidationInterceptor.java:48)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .ConversionErrorInterceptor 
> .intercept(ConversionErrorInterceptor.java:123)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .ParametersInterceptor.doIntercept(ParametersInterceptor.java:184)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .StaticParametersInterceptor 
> .intercept(StaticParametersInterceptor.java:105)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java: 
> 83)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .interceptor 
> .FileUploadInterceptor.intercept(FileUploadInterceptor.java:207)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:74)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .ScopedModelDrivenInterceptor 
> .intercept(ScopedModelDrivenInterceptor.java:127)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .interceptor 
> .ProfilingActivationInterceptor 
> .intercept(ProfilingActivationInterceptor.java:107)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .interceptor 
> .debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java: 
> 206)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java: 
> 115)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java: 
> 143)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java: 
> 121)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> org 
> .apache 
> .struts2 
> .interceptor 
> .ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:170)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java: 
> 123)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2 
> .interceptor 
> .ExceptionMappingInterceptor 
> .intercept(ExceptionMappingInterceptor.java:176)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:224)
> >         at
> > com.opensymphony.xwork2.DefaultActionInvocation 
> $2.doProfiling(DefaultActionInvocation.java:223)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
> >         at
> >  
> com 
> .opensymphony 
> .xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java: 
> 221)
> >         at
> >  
> org 
> .apache 
> .struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:50)
> >         at
> >  
> org 
> .apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java: 
> 504)
> >         at
> >  
> org 
> .apache 
> .struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java: 
> 422)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java: 
> 644)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java: 
> 423)
> >         at
> > weblogic.servlet.jsp.PageContextImpl.include(PageContextImpl.java: 
> 154)
> >         at jsp_servlet._main.__home_sw._jspService(__home_sw.java: 
> 171)
> >         at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
> >         at
> > weblogic.servlet.internal.ServletStubImpl 
> $ServletInvocationAction.run(ServletStubImpl.java:1006)
> >         at
> >  
> weblogic 
> .servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java: 
> 419)
> >         at
> > weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> com 
> .sherwin 
> .portal 
> .user.action.AuthenticationFilter.doFilter(AuthenticationFilter.java: 
> 259)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> org 
> .displaytag 
> .filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java: 
> 125)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java: 
> 644)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java: 
> 423)
> >         at
> > weblogic.servlet.jsp.PageContextImpl.include(PageContextImpl.java: 
> 154)
> >         at jsp_servlet._main.__main._jspService(__main.java:1473)
> >         at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
> >         at
> > weblogic.servlet.internal.ServletStubImpl 
> $ServletInvocationAction.run(ServletStubImpl.java:1006)
> >         at
> >  
> weblogic 
> .servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java: 
> 419)
> >         at
> > weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> com 
> .sherwin 
> .portal 
> .user.action.AuthenticationFilter.doFilter(AuthenticationFilter.java: 
> 259)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> org 
> .displaytag 
> .filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java: 
> 125)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java: 
> 326)
> >         at
> >  
> org 
> .apache 
> .struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
> >         at
> >  
> org 
> .apache 
> .struts 
> .action.RequestProcessor.processForwardConfig(RequestProcessor.java: 
> 386)
> >         at
> >  
> org 
> .apache.struts.action.RequestProcessor.process(RequestProcessor.java: 
> 229)
> >         at
> > org.apache.struts.action.ActionServlet.process(ActionServlet.java: 
> 1194)
> >         at
> > org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
> >         at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> >         at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >         at
> > weblogic.servlet.internal.ServletStubImpl 
> $ServletInvocationAction.run(ServletStubImpl.java:1006)
> >         at
> >  
> weblogic 
> .servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java: 
> 419)
> >         at
> > weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> com 
> .sherwin 
> .portal 
> .user.action.AuthenticationFilter.doFilter(AuthenticationFilter.java: 
> 259)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> org 
> .displaytag 
> .filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java: 
> 125)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> weblogic 
> .servlet 
> .internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java: 
> 326)
> >         at
> >  
> org 
> .apache 
> .struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
> >         at
> >  
> org 
> .apache 
> .struts 
> .action.RequestProcessor.processForwardConfig(RequestProcessor.java: 
> 386)
> >         at
> >  
> org 
> .apache.struts.action.RequestProcessor.process(RequestProcessor.java: 
> 229)
> >         at
> > org.apache.struts.action.ActionServlet.process(ActionServlet.java: 
> 1194)
> >         at
> > org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
> >         at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> >         at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >         at
> > weblogic.servlet.internal.ServletStubImpl 
> $ServletInvocationAction.run(ServletStubImpl.java:1006)
> >         at
> >  
> weblogic 
> .servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java: 
> 419)
> >         at
> > weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> com 
> .sherwin 
> .portal 
> .user.action.AuthenticationFilter.doFilter(AuthenticationFilter.java: 
> 259)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> >  
> org 
> .displaytag 
> .filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java: 
> 125)
> >         at
> >  
> weblogic 
> .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >         at
> > weblogic.servlet.internal.WebAppServletContext 
> $ServletInvocationAction.run(WebAppServletContext.java:6724)
> >         at
> >  
> weblogic 
> .security 
> .acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
> >         at
> >  
> weblogic.security.service.SecurityManager.runAs(SecurityManager.java: 
> 121)
> >         at
> >  
> weblogic 
> .servlet 
> .internal 
> .WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
> >         at
> >  
> weblogic 
> .servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java: 
> 2644)
> >         at
> > weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
> >         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
>
> -- 
> Best regards,
>  Daniel Dekany

------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables 
unlimited royalty-free distribution of the report engine 
for externally facing server and web deployment. 
http://p.sf.net/sfu/businessobjects
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.