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

Boris Morris commented on WW-4359:
----------------------------------

I have attached a maven example. Running "mvn tomcat:run-war" will deploy the 
application on "localhost:8080/struts2_test".

The maven build unpacks the templates and static files from the inside the 
struts2 jar and puts them in the root of the webapp. The files are then served 
from there.

Just like in the issue above, I have added a custom theme with it's own 
text.ftl and controlheader.ftl. The issue happens when resolving 
"~~~custom/css.ftl"

Hope this helps.

> Parent template resolution fails
> --------------------------------
>
>                 Key: WW-4359
>                 URL: https://issues.apache.org/jira/browse/WW-4359
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Actions
>    Affects Versions: 2.3.16.3
>         Environment: Tomcat 7.0.50 (Maven embedded with tomcat7-maven-plugin)
> Java 1.7.0_60
> Ubuntu 13.10
>            Reporter: Boris Morris
>            Priority: Blocker
>              Labels: freemarker, template, templates
>         Attachments: struts2_test.tgz
>
>
> The update to 2.3.16.3 from 2.3.15.3 my custom templates no longer seem to 
> work.
> I have a custom theme that has a template called text.ftl, it contains two 
> lines. One calls the control header from my theme and the other calls the 
> text.ftl from the parent theme, "simple". 
> Here's my theme.properties
> {noformat}
> parent = simple
> {noformat}
> And my text.ftl
> {noformat}
> <#include 
> "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" />
> <#include "/${parameters.templateDir}/simple/text.ftl" />
> {noformat}
> I haven't changed simple's text.ftl so that goes on to include css.ftl.
> Here, is where the issue is. When simple includes css.ftl, it uses 
> expandTheme. This causes the template name to be name to be expanded to 
> "template/~~~dotecon/css.ftl"
> From my understanding of 
> [WW-4145|https://issues.apache.org/jira/browse/WW-4145] this should go to the 
> parent theme of my theme - i.e. it should delegate back to simple's css.ftl.
> The issue is that I get the following error:
> {noformat}
> java.io.FileNotFoundException: Template template/~~~dotecon/css.ftl not found.
>       at freemarker.template.Configuration.getTemplate(Configuration.java:580)
>       at 
> freemarker.core.Environment.getTemplateForInclusion(Environment.java:1490)
>       at freemarker.core.Include.accept(Include.java:157)
>       at freemarker.core.Environment.visit(Environment.java:221)
>       at freemarker.core.MixedContent.accept(MixedContent.java:92)
>       at freemarker.core.Environment.visit(Environment.java:221)
>       at freemarker.core.Environment.include(Environment.java:1508)
>       at freemarker.core.Include.accept(Include.java:169)
>       at freemarker.core.Environment.visit(Environment.java:221)
>       at freemarker.core.MixedContent.accept(MixedContent.java:92)
>       at freemarker.core.Environment.visit(Environment.java:221)
>       at freemarker.core.Environment.process(Environment.java:199)
>       at freemarker.template.Template.process(Template.java:259)
>       at 
> org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:158)
>       at org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:593)
>       at org.apache.struts2.components.UIBean.end(UIBean.java:547)
>       at 
> org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_s_005ftextfield_005f2(RoundPrices_jsp.java:8094)
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_s_005felse_005f18(RoundPrices_jsp.java:8055)
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_display_005fcolumn_005f36(RoundPrices_jsp.java:7950)
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_s_005fif_005f43(RoundPrices_jsp.java:7902)
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspService(RoundPrices_jsp.java:1134)
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:412)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
>       at 
> org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>       at 
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>       at 
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>       at 
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:254)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.LockingInterceptor.intercept(LockingInterceptor.java:45)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.SessionContextInterceptor.intercept(SessionContextInterceptor.java:41)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.BaseAuthenticationInterceptor.intercept(BaseAuthenticationInterceptor.java:75)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:139)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.ResponseHeaderInterceptor.intercept(ResponseHeaderInterceptor.java:32)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.MDCInterceptor.intercept(MDCInterceptor.java:72)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>       at 
> com.opensymphony.xwork2.ActionChainResult.execute(ActionChainResult.java:233)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>       at 
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>       at 
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:254)
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.LockingInterceptor.intercept(LockingInterceptor.java:45)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.SessionContextInterceptor.intercept(SessionContextInterceptor.java:55)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.BaseAuthenticationInterceptor.intercept(BaseAuthenticationInterceptor.java:97)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:139)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.ResponseHeaderInterceptor.intercept(ResponseHeaderInterceptor.java:32)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> com.dotecon.interceptors.MDCInterceptor.intercept(MDCInterceptor.java:76)
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       at 
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>       at 
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:562)
>       at 
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>       at 
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> ch.qos.logback.classic.helpers.MDCInsertingServletFilter.doFilter(MDCInsertingServletFilter.java:51)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176)
>       at 
> org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145)
>       at 
> org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
>       at 
> org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:381)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>       at 
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>       at 
> com.googlecode.psiprobe.Tomcat70AgentValve.invoke(Tomcat70AgentValve.java:38)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
>       at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)
>       at 
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
>       at 
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
>       at 
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1721)
>       at 
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1679)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>       at java.lang.Thread.run(Thread.java:745)
> {noformat}
> If I increase my logging level I get the following message
> {noformat}
>  freemarker.log.Log4JLoggerFactory$Log4JLogger.81, debug, , 
> "template/~~~dotecon/css.ftl"["en_GB",UTF-8,parsed]  cached copy not yet 
> stale; using cached.
> {noformat}
> Followed by this stack trace
> {noformat}
> com.opensymphony.xwork2.util.logging.commons.CommonsLogger.64, warn, , Error 
> reading included file template/~~~dotecon/css.ftl - Class: 
> freemarker.core.Include
> File: Include.java
> Method: accept
> Line: 167 - freemarker/core/Include.java:167:-1
>  org.apache.jasper.JasperException: Error reading included file 
> template/~~~dotecon/css.ftl - Class: freemarker.core.Include
> File: Include.java
> Method: accept
> Line: 167 - freemarker/core/Include.java:167:-1
>       at 
> org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:585)
>  ~[tomcat-jasper-7.0.50.jar:7.0.50]
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
>  ~[tomcat-jasper-7.0.50.jar:7.0.50]
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) 
> ~[tomcat-jasper-7.0.50.jar:7.0.50]
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) 
> ~[tomcat-jasper-7.0.50.jar:7.0.50]
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
> ~[tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
> ~[tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
>  ~[tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
>  ~[tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:412)
>  ~[tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
>  ~[tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>  ~[struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>  ~[struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:254)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.LockingInterceptor.intercept(LockingInterceptor.java:45)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.SessionContextInterceptor.intercept(SessionContextInterceptor.java:41)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.BaseAuthenticationInterceptor.intercept(BaseAuthenticationInterceptor.java:75)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:139)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.ResponseHeaderInterceptor.intercept(ResponseHeaderInterceptor.java:32)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.MDCInterceptor.intercept(MDCInterceptor.java:72) 
> [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54) 
> [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.ActionChainResult.execute(ActionChainResult.java:233) 
> [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:254)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.LockingInterceptor.intercept(LockingInterceptor.java:45)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.SessionContextInterceptor.intercept(SessionContextInterceptor.java:55)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.BaseAuthenticationInterceptor.intercept(BaseAuthenticationInterceptor.java:97)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:139)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.ResponseHeaderInterceptor.intercept(ResponseHeaderInterceptor.java:32)
>  [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> com.dotecon.interceptors.MDCInterceptor.intercept(MDCInterceptor.java:76) 
> [web-app-core-3.0.24-SNAPSHOT.jar:3.0.24-SNAPSHOT]
>       at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  [xwork-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54) 
> [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:562) 
> [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
>  [struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
>  [displaytag-1.2.jar:na]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> ch.qos.logback.classic.helpers.MDCInsertingServletFilter.doFilter(MDCInsertingServletFilter.java:51)
>  [logback-classic-1.0.11.jar:na]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176) 
> [urlrewritefilter-3.2.0.jar:3.2.0]
>       at 
> org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145) 
> [urlrewritefilter-3.2.0.jar:3.2.0]
>       at 
> org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
>  [urlrewritefilter-3.2.0.jar:3.2.0]
>       at 
> org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:381)
>  [urlrewritefilter-3.2.0.jar:3.2.0]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 
> [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> com.googlecode.psiprobe.Tomcat70AgentValve.invoke(Tomcat70AgentValve.java:38) 
> [tomcat70adaptor-2.3.3.jar:2.3.3]
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 
> [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) 
> [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409) 
> [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1721)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1679)
>  [tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  [na:1.7.0_60]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  [na:1.7.0_60]
>       at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60]
> Caused by: org.apache.struts2.StrutsException: null
>       at org.apache.struts2.components.UIBean.end(UIBean.java:549) 
> ~[struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
>  ~[struts2-core-2.3.16.3.jar:2.3.16.3]
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_s_005ftextfield_005f2(RoundPrices_jsp.java:8094)
>  ~[na:na]
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_s_005felse_005f18(RoundPrices_jsp.java:8055)
>  ~[na:na]
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_display_005fcolumn_005f36(RoundPrices_jsp.java:7950)
>  ~[na:na]
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspx_meth_s_005fif_005f43(RoundPrices_jsp.java:7902)
>  ~[na:na]
>       at 
> org.apache.jsp.WEB_002dINF.jsp.auctioneer.RoundPrices_jsp._jspService(RoundPrices_jsp.java:1134)
>  ~[na:na]
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
> ~[tomcat-jasper-7.0.50.jar:7.0.50]
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
> ~[tomcat-embed-core-7.0.50.jar:7.0.50]
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>  ~[tomcat-jasper-7.0.50.jar:7.0.50]
>       ... 130 common frames omitted
> Caused by: freemarker.template.TemplateException: Error reading included file 
> template/~~~dotecon/css.ftl
>       at freemarker.core.Include.accept(Include.java:167) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Environment.visit(Environment.java:221) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.MixedContent.accept(MixedContent.java:92) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Environment.visit(Environment.java:221) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Environment.include(Environment.java:1508) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Include.accept(Include.java:169) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Environment.visit(Environment.java:221) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.MixedContent.accept(MixedContent.java:92) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Environment.visit(Environment.java:221) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Environment.process(Environment.java:199) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.template.Template.process(Template.java:259) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at 
> org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:158)
>  ~[struts2-core-2.3.16.3.jar:2.3.16.3]
>       at org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:593) 
> ~[struts2-core-2.3.16.3.jar:2.3.16.3]
>       at org.apache.struts2.components.UIBean.end(UIBean.java:547) 
> ~[struts2-core-2.3.16.3.jar:2.3.16.3]
>       ... 139 common frames omitted
> Caused by: java.io.FileNotFoundException: Template 
> template/~~~dotecon/css.ftl not found.
>       at 
> freemarker.template.Configuration.getTemplate(Configuration.java:580) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at 
> freemarker.core.Environment.getTemplateForInclusion(Environment.java:1490) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       at freemarker.core.Include.accept(Include.java:157) 
> ~[freemarker-2.3.19.jar:2.3.19]
>       ... 152 common frames omitted
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to