There is a problem with FreeMarker, hit this url in showcase:
http://localhost:8080/struts2-showcase/tiles/freemarkerLayout.action

JspTaglibs["http://tiles.apache.org/tags-tiles";] is undefined.
It cannot be assigned to tiles
        at 
org.apache.struts2.tiles.StrutsTilesRequestContext.include(StrutsTilesRequestContext.java:120)
        at 
org.apache.struts2.tiles.StrutsTilesRequestContext.dispatch(StrutsTilesRequestContext.java:86)
        at 
org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:419)
        at 
org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:370)

I tested it in 2.1.2 and it was failing also, anyone knows about this?
musachy

On Sat, Dec 27, 2008 at 4:14 PM, Musachy Barroso <musa...@gmail.com> wrote:
> 3 hours debugging, and the fix was one line of code :). Please test
> against trunk and let me know, it all seems to work for me.
>
> musachy
>
> On Sat, Dec 27, 2008 at 12:40 PM, Musachy Barroso <musa...@gmail.com> wrote:
>> yes, that's a good idea, in fact there are some tags there, like
>> "url", wich do not fail.
>>
>> On Sat, Dec 27, 2008 at 12:36 PM, Wes Wannemacher <w...@wantii.com> wrote:
>>> I'll follow suit and rescind my vote as well... Should we add a tag
>>> showcase's decorator so that it pops up when we test in the future?
>>>
>>> -Wes
>>>
>>> On Sat, 2008-12-27 at 12:31 -0500, Musachy Barroso wrote:
>>>> never mind, just adding:
>>>>
>>>> <s:hidden name="somename" value="%{'aaa'}" />
>>>>
>>>> to the main decorator makes fail, I will downgrade my vote.
>>>> musachy
>>>>
>>>> On Sat, Dec 27, 2008 at 12:23 PM, Musachy Barroso <musa...@gmail.com> 
>>>> wrote:
>>>> >  I change the filter and filter mappings to the "old" ones, and
>>>> > showcase still works, do you know what I would need to change to
>>>> > reproduce the problem?
>>>> >
>>>> > musachy
>>>> >
>>>> > On Sat, Dec 27, 2008 at 11:12 AM, Al Sutton <a...@funkyandroid.com> 
>>>> > wrote:
>>>> >> I'm sorry I didn't try the trunk sooner (too busy coding the site :().
>>>> >>
>>>> >> The filters are;
>>>> >>
>>>> >>   <filter>
>>>> >>       <filter-name>struts-cleanup</filter-name>
>>>> >>
>>>> >> <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
>>>> >>   </filter>
>>>> >>   <filter>
>>>> >>       <filter-name>sitemesh</filter-name>
>>>> >>
>>>> >> <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
>>>> >>   </filter>
>>>> >>   <filter>
>>>> >>       <filter-name>struts</filter-name>
>>>> >>
>>>> >> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
>>>> >>       <init-param>
>>>> >>         <param-name>actionPackages</param-name>
>>>> >>         <param-value>com.andappstore.actions</param-value>
>>>> >>       </init-param>
>>>> >>   </filter>
>>>> >>     <filter-mapping>
>>>> >>       <filter-name>struts-cleanup</filter-name>
>>>> >>       <url-pattern>/*</url-pattern>
>>>> >>   </filter-mapping>
>>>> >>   <filter-mapping>
>>>> >>       <filter-name>sitemesh</filter-name>
>>>> >>       <url-pattern>/*</url-pattern>
>>>> >>   </filter-mapping>
>>>> >>   <filter-mapping>
>>>> >>       <filter-name>struts</filter-name>
>>>> >>       <url-pattern>/*</url-pattern>
>>>> >>   </filter-mapping>
>>>> >>  The sitemesh.xml is;
>>>> >>
>>>> >> <sitemesh>
>>>> >>   <property name="decorators-file" value="/WEB-INF/decorators.xml" />
>>>> >>   <excludes file="${decorators-file}" />
>>>> >>
>>>> >>   <page-parsers>
>>>> >>       <parser content-type="text/html"
>>>> >>           
>>>> >> class="com.opensymphony.module.sitemesh.parser.HTMLPageParser" />
>>>> >>       <parser content-type="text/html;charset=ISO-8859-1"
>>>> >>           
>>>> >> class="com.opensymphony.module.sitemesh.parser.HTMLPageParser" />
>>>> >>   </page-parsers>
>>>> >>
>>>> >>   <decorator-mappers>
>>>> >>       <mapper
>>>> >> class="com.opensymphony.module.sitemesh.mapper.AgentDecoratorMapper">
>>>> >>           <param name="match.Android" value="android" />
>>>> >>       </mapper>
>>>> >>       <mapper
>>>> >> class="com.opensymphony.module.sitemesh.mapper.ConfigDecoratorMapper">
>>>> >>           <param name="config" value="${decorators-file}" />
>>>> >>       </mapper>         </decorator-mappers>
>>>> >> </sitemesh>
>>>> >>
>>>> >> and the decorators.xml file is;
>>>> >>
>>>> >> <decorators defaultdir="/WEB-INF/decorators">
>>>> >>   <excludes>
>>>> >>       <pattern>/updates/*</pattern>
>>>> >>   </excludes>
>>>> >>   <decorator name="default" page="default.jsp">
>>>> >>         <pattern>/*</pattern>
>>>> >>   </decorator>
>>>> >> </decorators>
>>>> >>
>>>> >>
>>>> >>
>>>> >>
>>>> >>
>>>> >> Musachy Barroso wrote:
>>>> >>>
>>>> >>> this one looks bad, how do you have your filters configured? I think
>>>> >>> we saw this before and had been fixed.
>>>> >>>
>>>> >>> musachy
>>>> >>>
>>>> >>> On Sat, Dec 27, 2008 at 4:50 AM, Al Sutton <a...@funkyandroid.com> 
>>>> >>> wrote:
>>>> >>>
>>>> >>>>
>>>> >>>> Next problem; I'm seeing an exception being thrown in Freemarker 
>>>> >>>> which I
>>>> >>>> believe is a knock on effect from the sitemesh plugin.
>>>> >>>>
>>>> >>>> When I set a breakpoint in FreemarkerTemplateEngine.renderTemplate 
>>>> >>>> there
>>>> >>>> are
>>>> >>>> several passes through where the servletcontext, request, and response
>>>> >>>> objects are pulled from the stack in the TemplateRenderingContext, but
>>>> >>>> then
>>>> >>>> nulls start to be returned and hence the NPE is thrown.
>>>> >>>>
>>>> >>>> I beleive this is when parsing a decorator containing S2 tags is 
>>>> >>>> included
>>>> >>>> because the output page contains the main data, the HTML components 
>>>> >>>> from
>>>> >>>> the
>>>> >>>> template, and then stops at the first S2 tag :( .
>>>> >>>>
>>>> >>>> Al.
>>>> >>>>
>>>> >>>>    java.lang.NullPointerException
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:159)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:89)
>>>> >>>>  at 
>>>> >>>> org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:559)
>>>> >>>>  at org.apache.struts2.components.UIBean.end(UIBean.java:513)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.jsp.WEB_002dINF.decorators.default_jsp._jspx_meth_s_005fhidden_005f0(default_jsp.java:668)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.jsp.WEB_002dINF.decorators.default_jsp._jspService(default_jsp.java:162)
>>>> >>>>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>>>> >>>>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
>>>> >>>>  at
>>>> >>>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
>>>> >>>>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
>>>> >>>>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> com.opensymphony.module.sitemesh.filter.PageFilter.writeDecorator(PageFilter.java:173)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> com.opensymphony.module.sitemesh.filter.PageFilter.applyDecorator(PageFilter.java:158)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:62)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>>>> >>>>  at
>>>> >>>>
>>>> >>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>>>> >>>>  at
>>>> >>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>>>> >>>>  at java.lang.Thread.run(Unknown Source)
>>>> >>>>
>>>> >>>> --
>>>> >>>> ======
>>>> >>>> Funky Android Limited is registered in England & Wales with the 
>>>> >>>> company
>>>> >>>> number  6741909. The registered head office is Kemp House, 152-160 
>>>> >>>> City
>>>> >>>> Road, London,  EC1V 2NX, UK.
>>>> >>>> The views expressed in this email are those of the author and not
>>>> >>>> necessarily those of Funky Android Limited, it's associates, or it's
>>>> >>>> subsidiaries.
>>>> >>>>
>>>> >>>>
>>>> >>>> ---------------------------------------------------------------------
>>>> >>>> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
>>>> >>>> For additional commands, e-mail: dev-h...@struts.apache.org
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>
>>>> >>>
>>>> >>>
>>>> >>>
>>>> >>
>>>> >>
>>>> >> --
>>>> >> ======
>>>> >> Funky Android Limited is registered in England & Wales with the company
>>>> >> number  6741909. The registered head office is Kemp House, 152-160 City
>>>> >> Road, London,  EC1V 2NX, UK.
>>>> >> The views expressed in this email are those of the author and not
>>>> >> necessarily those of Funky Android Limited, it's associates, or it's
>>>> >> subsidiaries.
>>>> >>
>>>> >>
>>>> >> ---------------------------------------------------------------------
>>>> >> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
>>>> >> For additional commands, e-mail: dev-h...@struts.apache.org
>>>> >>
>>>> >>
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > "Hey you! Would you help me to carry the stone?" Pink Floyd
>>>> >
>>>>
>>>>
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
>>> For additional commands, e-mail: dev-h...@struts.apache.org
>>>
>>>
>>
>>
>>
>> --
>> "Hey you! Would you help me to carry the stone?" Pink Floyd
>>
>
>
>
> --
> "Hey you! Would you help me to carry the stone?" Pink Floyd
>



-- 
"Hey you! Would you help me to carry the stone?" Pink Floyd

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
For additional commands, e-mail: dev-h...@struts.apache.org

Reply via email to