[ https://issues.apache.org/jira/browse/TOMAHAWK-1070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12516901 ]
Martin Marinschek edited comment on TOMAHAWK-1070 at 8/1/07 2:02 AM: --------------------------------------------------------------------- I've only now seen that the template renderer was enabled for every output-text component - and have changed this in my last commit. I'd say we should enable template rendering only if it has been well tested, both functionality and performance-wise. The stack-trace is an example for what we should look for while testing... regards, Martin was: I've only now seen that the template renderer was enabled for every output-text component - and have changed this in my last commit. I'd say we should enable template rendering only if it has been well tested, both functionality and performance-wise. The stack-trace is an example for what we should look like while testing... regards, Martin > Freemarker Template rendering enabled by default whenever Sandbox is added to > project > ------------------------------------------------------------------------------------- > > Key: TOMAHAWK-1070 > URL: https://issues.apache.org/jira/browse/TOMAHAWK-1070 > Project: MyFaces Tomahawk > Issue Type: Bug > Components: Template Renderer > Affects Versions: 1.1.7-SNAPSHOT > Environment: Windows XP, Tomcat 5.5.20, MyFaces 1.1.5, Tomahawk > 1.1.6, Sandbox 1.1.17-SNAPSHOT (1 Aug 2007 nightly build) > Reporter: Svilen Ivanov > > 1. Sandbox requires Freemarker jars even if the developer doesn't intend to > use Template rendering features. Otherwise there is following error: > The "java.lang.NoClassDefFoundError: freemarker/template/TemplateException". > It occurs when I make first HTTP request to the application and it crashes. > 2. When I added Freemarker jars after few clicks I got a Freemarker exception > [System][ERROR] > Error on line 1, column 3 in outputText_children.ftl > Expecting a string, date or number here, Expression text!"" is instead > a freemarker.template.TemplateBooleanModel$1 > The problematic instruction: > ---------- > ==> ${text!""} [on line 1, column 1 in outputText_children.ftl] > ---------- > Java backtrace for programmers: > ---------- > freemarker.core.NonStringException: Error on line 1, column 3 in > outputText_children.ftl > Expecting a string, date or number here, Expression text!"" is instead > a freemarker.template.TemplateBooleanModel$1 > at freemarker.core.Expression.getStringValue(Expression.java:126) > at freemarker.core.Expression.getStringValue(Expression.java:93) > at freemarker.core.DollarVariable.accept(DollarVariable.java:76) > 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.myfaces.renderkit.template.DefaultTemplateEncoder.encodeTemplate(DefaultTemplateEncoder.java:55) > at > org.apache.myfaces.renderkit.template.TemplateRenderer.encodeTemplate(TemplateRenderer.java:91) > at > org.apache.myfaces.renderkit.template.TemplateRenderer.encodeChildren(TemplateRenderer.java:54) > at > javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:527) > at > org.apache.myfaces.shared_impl.renderkit.RendererUtils.renderChild(RendererUtils.java:414) > at > org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:229) > at > org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:101) > at > javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) > at > org.apache.myfaces.shared_impl.renderkit.RendererUtils.renderChild(RendererUtils.java:419) > at > org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:229) > at > org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:101) > at > javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) > at javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:498) > at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:366) > at > org.apache.myfaces.shared_impl.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBodyTagBase.java:57) > at > org.apache.jsp.pages.plan.team.teamDetails_jsp._jspService(teamDetails_jsp.java:864) > at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) > at > org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) > at > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) > at > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) > at > org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:419) > at > org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:211) > at > org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:101) > at > org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41) > at > org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:140) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > com.XXXXXXXXXXXXXXX.ui.webfilters.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:25) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > com.XXXXXXXXXXXXXXX.ui.webfilters.LoginFilter.doFilter(LoginFilter.java:241) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:67) > at > org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:223) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.