You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Yasser Zamani (JIRA)" <ji...@apache.org> on 2013/10/21 10:36:43 UTC

[jira] [Commented] (WW-4223) tag throws NPE when used with Jetty

    [ https://issues.apache.org/jira/browse/WW-4223?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13800465#comment-13800465 ] 

Yasser Zamani commented on WW-4223:
-----------------------------------

I discovered the source of the problem. It seems that there is no problem with Struts itself but when you run a Struts application on:
* *Jetty:* _TagLibraryInfoImpl_ class will be resolved from _jetty home/lib/jsp/org.apache.jasper.glassfish-2.2.2.v201112011158.jar_ where line #129 is:
{code:title=TagLibraryInfoImpl.java:129|borderStyle=solid}
print("tagLibraryValidator", tagLibraryValidator.toString(), out);
{code}
*but in*
* *Tomcat:*  _TagLibraryInfoImpl_ class will be resolved from _tomcat home/lib/jasper.jar_ where equivalent code at line #94 is:
{code:title=TagLibraryInfoImpl.java:94|borderStyle=solid}
print("tagLibraryValidator", "" + tagLibraryValidator, out);
{code}

These facts show that when _tagLibraryValidator_ is null, Jetty will be broken by NPE (because of _tagLibraryValidator.toString()_) but Tomcat continues well (because of _"" + tagLibraryValidator_). :)

> <s:debug/> tag throws NPE when used with Jetty
> ----------------------------------------------
>
>                 Key: WW-4223
>                 URL: https://issues.apache.org/jira/browse/WW-4223
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - Tags
>    Affects Versions: 2.3.15
>            Reporter: Lukasz Lenart
>             Fix For: 2.3.17
>
>
> When used with Tomcat everything works, but when used with Jetty it throws NPE:
> {noformat}
>  org.apache.jasper.JasperException: Class: org.apache.jasper.compiler.TagLibraryInfoImpl File: TagLibraryInfoImpl.java Method: toString Line: 129 - org/apache/jasper/compiler/TagLibraryInfoImpl.java:129:-1
>     org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:440)
>     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
>     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>     org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:698)
>     org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:526)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
>     org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:586)
>     org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
>     org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1110)
>     org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:453)
>     org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>     org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1044)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
>     org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:261)
>     org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:101)
>     org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>     org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>     com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>     org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>     org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:161)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>     org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:563)
>     org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>     org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
>     org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1544)
>     org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:524)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
>     org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:568)
>     org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
>     org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1110)
>     org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:453)
>     org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>     org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1044)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
>     org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:200)
>     org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
>     org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
>     org.eclipse.jetty.server.Server.handle(Server.java:445)
>     org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:278)
>     org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:216)
>     org.eclipse.jetty.io.AbstractConnection$1.run(AbstractConnection.java:505)
>     org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:601)
>     org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:532)
>     java.lang.Thread.run(Thread.java:724)
>     
> Class: org.apache.jasper.compiler.TagLibraryInfoImpl File: TagLibraryInfoImpl.java Method: toString Line: 129 - org/apache/jasper/compiler/TagLibraryInfoImpl.java:129:-1
>     org.apache.struts2.components.UIBean.end(UIBean.java:528)
>     org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
>     org.apache.jsp.index_jsp._jspx_meth_s_debug_0(index_jsp.java:227)
>     org.apache.jsp.index_jsp._jspService(index_jsp.java:81)
>     org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>     org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
>     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
>     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>     org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:698)
>     org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:526)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
>     org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:586)
>     org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
>     org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1110)
>     org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:453)
>     org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>     org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1044)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
>     org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:261)
>     org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:101)
>     org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>     org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>     com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>     org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>     org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:161)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>     org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:563)
>     org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>     org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
>     org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1544)
>     org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:524)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
>     org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:568)
>     org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
>     org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1110)
>     org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:453)
>     org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>     org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1044)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
>     org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:200)
>     org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
>     org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
>     org.eclipse.jetty.server.Server.handle(Server.java:445)
>     org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:278)
>     org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:216)
>     org.eclipse.jetty.io.AbstractConnection$1.run(AbstractConnection.java:505)
>     org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:601)
>     org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:532)
>     java.lang.Thread.run(Thread.java:724)
>     
> java.lang.NullPointerException
>     org.apache.jasper.compiler.TagLibraryInfoImpl.toString(TagLibraryInfoImpl.java:129)
>     java.lang.String.valueOf(String.java:2854)
>     java.lang.StringBuilder.append(StringBuilder.java:128)
>     java.util.AbstractMap.toString(AbstractMap.java:523)
>     java.lang.String.valueOf(String.java:2854)
>     java.lang.StringBuilder.append(StringBuilder.java:128)
>     java.util.AbstractMap.toString(AbstractMap.java:523)
>     java.lang.String.valueOf(String.java:2854)
>     java.lang.StringBuffer.append(StringBuffer.java:232)
>     freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:130)
>     freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)
>     freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
>     freemarker.core.Expression.getStringValue(Expression.java:93)
>     freemarker.core.StringBuiltins$StringBuiltIn._getAsTemplateModel(StringBuiltins.java:71)
>     freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
>     freemarker.core.Expression.getStringValue(Expression.java:93)
>     freemarker.core.DollarVariable.accept(DollarVariable.java:76)
>     freemarker.core.Environment.visit(Environment.java:221)
>     freemarker.core.IfBlock.accept(IfBlock.java:82)
>     freemarker.core.Environment.visit(Environment.java:221)
>     freemarker.core.MixedContent.accept(MixedContent.java:92)
>     freemarker.core.Environment.visit(Environment.java:221)
>     freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167)
>     freemarker.core.Environment.visit(Environment.java:428)
>     freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
>     freemarker.core.Environment.visit(Environment.java:221)
>     freemarker.core.MixedContent.accept(MixedContent.java:92)
>     freemarker.core.Environment.visit(Environment.java:221)
>     freemarker.core.Environment.include(Environment.java:1508)
>     freemarker.core.Include.accept(Include.java:169)
>     freemarker.core.Environment.visit(Environment.java:221)
>     freemarker.core.MixedContent.accept(MixedContent.java:92)
>     freemarker.core.Environment.visit(Environment.java:221)
>     freemarker.core.Environment.process(Environment.java:199)
>     freemarker.template.Template.process(Template.java:259)
>     org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:157)
>     org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:572)
>     org.apache.struts2.components.UIBean.end(UIBean.java:526)
>     org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
>     org.apache.jsp.index_jsp._jspx_meth_s_debug_0(index_jsp.java:227)
>     org.apache.jsp.index_jsp._jspService(index_jsp.java:81)
>     org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>     org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
>     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
>     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>     org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:698)
>     org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:526)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
>     org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:586)
>     org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
>     org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1110)
>     org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:453)
>     org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>     org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1044)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
>     org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:261)
>     org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:101)
>     org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>     org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>     com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>     org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>     org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>     com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:161)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>     org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>     org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:563)
>     org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>     org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
>     org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1544)
>     org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:524)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
>     org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:568)
>     org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
>     org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1110)
>     org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:453)
>     org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>     org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1044)
>     org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
>     org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:200)
>     org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
>     org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
>     org.eclipse.jetty.server.Server.handle(Server.java:445)
>     org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:278)
>     org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:216)
>     org.eclipse.jetty.io.AbstractConnection$1.run(AbstractConnection.java:505)
>     org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:601)
>     org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:532)
>     java.lang.Thread.run(Thread.java:724)
>     
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.1#6144)