struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brandon Ramirez (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (WW-4306) After WW-3330, <@s.action> broken in non-sitemesh freemarker templates
Date Mon, 31 Mar 2014 15:03:15 GMT

     [ https://issues.apache.org/jira/browse/WW-4306?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Brandon Ramirez updated WW-4306:
--------------------------------

    Description: 
After upgrading from Struts 2.1.8.1 to 2.3.16.1, we observed that if a Sitemesh Freemarker
decorator used <@s.action> to include another action, the action's Freemarker view output
is not rendered.

This is identical to what WW-3330 describes, which is reported fixed in 2.2.3.

The documentation (http://struts.apache.org/release/2.3.x/docs/sitemesh-plugin.html) specifies
to use com.opensymphony.sitemesh.webapp.SiteMeshFilter.  The fix in WW-3330 applies to org.apache.struts2.sitemesh.FreemarkerPageFilter,
a sub-class of SiteMeshFilter.  Using SiteMeshFilter as the documentation specifies, WW-3330
does not appear resolved.

If I change my web.xml to use FreemarkerPageFilter instead of SiteMeshFilter, the WW-3330
problem is resolved, but now <@s.action> from a Freemarker template that is *not* a
Sitemesh decorator over-writes any previous output.

Steps to reproduce:

With a web app that uses the FreemarkerPageFilter instead of SiteMeshFilter, create a Freemarker
template that has 3 lines:

1. A standard line of static text
2. An <@s.action> reference.
3. More static text.

Observed behavior: Text before the output of the <@s.action> call does not get to the
client.
Expected behavior: All of the output gets to the client.

Judging by the number of configuration changes (servlets and filters) in 2.2, it is possible
that I have web.xml configured incorrectly.  If that is the case, feel free to throw your
tomatoes :)  But I have triple checked and at this point I am wondering if this is a regression
from WW-3330.

If needed, I can try to put together a minimal web app to reproduce the problem.

  was:
After upgrading from Struts 2.1.8.1 to 2.3.16.1, we observed that if a Sitemesh Freemarker
decorator used <@s.action> to include another action, the action's Freemarker view output
is not rendered.

This is identical to what WW-3330 describes, which is reported fixed in 2.2.3.

The documentation (http://struts.apache.org/release/2.3.x/docs/sitemesh-plugin.html) specifies
to use com.opensymphony.sitemesh.webapp.SiteMeshFilter.  The fix in WW-3330 applies to org.apache.struts2.sitemesh.FreemarkerPageFilter,
a sub-class of SiteMeshFilter.  Using SiteMeshFilter as the documentation specifies, WW-3330
does not appear resolved.

If I change my web.xml to use FreemarkerPageFilter instead of SiteMeshFilter, the WW-3330
problem is resolved, but now <@s.action> fails to render Freemarker output when *not*
included via Sitemesh decorators.

Judging by the number of configuration changes (servlets and filters) in 2.2, it is possible
that I have web.xml configured incorrectly.  If that is the case, feel free to throw your
tomatoes :)  But I have triple checked and at this point I am wondering if this is a regression
from WW-3330.

If needed, I can try to put together a minimal web app to reproduce the problem.


> After WW-3330, <@s.action> broken in non-sitemesh freemarker templates
> ----------------------------------------------------------------------
>
>                 Key: WW-4306
>                 URL: https://issues.apache.org/jira/browse/WW-4306
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - SiteMesh
>    Affects Versions: 2.3.16.1
>            Reporter: Brandon Ramirez
>              Labels: freemarker, regression
>             Fix For: 2.3.x
>
>         Attachments: ww4306.war
>
>
> After upgrading from Struts 2.1.8.1 to 2.3.16.1, we observed that if a Sitemesh Freemarker
decorator used <@s.action> to include another action, the action's Freemarker view output
is not rendered.
> This is identical to what WW-3330 describes, which is reported fixed in 2.2.3.
> The documentation (http://struts.apache.org/release/2.3.x/docs/sitemesh-plugin.html)
specifies to use com.opensymphony.sitemesh.webapp.SiteMeshFilter.  The fix in WW-3330 applies
to org.apache.struts2.sitemesh.FreemarkerPageFilter, a sub-class of SiteMeshFilter.  Using
SiteMeshFilter as the documentation specifies, WW-3330 does not appear resolved.
> If I change my web.xml to use FreemarkerPageFilter instead of SiteMeshFilter, the WW-3330
problem is resolved, but now <@s.action> from a Freemarker template that is *not* a
Sitemesh decorator over-writes any previous output.
> Steps to reproduce:
> With a web app that uses the FreemarkerPageFilter instead of SiteMeshFilter, create a
Freemarker template that has 3 lines:
> 1. A standard line of static text
> 2. An <@s.action> reference.
> 3. More static text.
> Observed behavior: Text before the output of the <@s.action> call does not get
to the client.
> Expected behavior: All of the output gets to the client.
> Judging by the number of configuration changes (servlets and filters) in 2.2, it is possible
that I have web.xml configured incorrectly.  If that is the case, feel free to throw your
tomatoes :)  But I have triple checked and at this point I am wondering if this is a regression
from WW-3330.
> If needed, I can try to put together a minimal web app to reproduce the problem.



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

Mime
View raw message