[
https://issues.apache.org/jira/browse/TILES-544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13262655#comment-13262655
]
Nicolas Le Bas commented on TILES-544:
--------------------------------------
{quote}it really seems to be upside down?{quote}
Yes, it seems so when you look at it from this problem's point of view. But
actually the AttributeContext is something that aggregates all attributes
values from the definition, the overriden values in the <insert*> tag, and the
cascaded attributes from previously processed definitions. So it's in the right
order.
{quote}I got the following error [...] It's from the
container.endContext(context) call.{quote}
try:
{code}container.endContext(request, response){code}
You just use the same arguments as {{startContext}}. The are some examples
[here|http://tiles.apache.org/2.2/framework/tiles-template/xref/index.html].
Actually what I had in mind is:
{code}
protected void renderMergedOutputModel(
Map<String, Object> model, HttpServletRequest request,
HttpServletResponse response) throws Exception {
ServletContext servletContext = getServletContext();
TilesContainer container = ServletUtil.getContainer(servletContext);
container.startContext(request, response);
try {
super.renderMergedOutputModel(model, request, response);
} finally {
container.endContext(request, response);
}
}
{code}
> Stack overflow due to rendering loop when including a resource resulting in
> another tiles view.
> -----------------------------------------------------------------------------------------------
>
> Key: TILES-544
> URL: https://issues.apache.org/jira/browse/TILES-544
> Project: Tiles
> Issue Type: Bug
> Affects Versions: 2.2.2
> Environment: Spring MVC 3.1.1
> Reporter: Viktor Hedefalk
> Attachments: tiles-stackoverflow.txt
>
>
> I get a stackoverflow because of a rendering loop when including an call to a
> controller with a view is also a tile. This is a dup of TILES-418, but since
> that one was closed and I couldn't attach my stack trace, I'll open this new
> one.
> To me this is very critical. I just upgraded an application from Spring 2.0.7
> and old struts-tiles to Spring 3.1.1 and tiles 2.2.2 and the structure worked
> with struts-tiles. It's kind of a homebrew portlet thingy where we iterate
> over url:s pointing to controllers given by a cms.
> The included controller is called correctly and returns a model and view
> where the view points to a tile definition. But when Spring gives over the
> rendering to tiles, the loop begins.
> It doesn't matter if I include the url with:
> <tiles:insertTemplate name="${entry.url}" />
> or
> <c:import url="${entry.url }" />
> the same error occurs.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira