If you have an empty tiles:put tag in a jsp:
<tiles:put name="myTile"></tiles:put>

and you call it from a layout jsp:
<tiles:getAsString name="myTile"/>

You will end up with the last tile displayed from ANY application
using tiles in your VM. In our case, we have different customers on
different instances of the same application. Imagine seeing the body
content from somebody else's instance in yours!

A two-page sample of this bug is as follows:
---page 1, the layout page named testLayout.jsp----
<%@ taglib uri="/layouts/struts-tiles.tld" prefix="tiles" %>
<HTML>
<HEAD>
<TITLE>BUG</TITLE>
</HEAD>
<BODY>
Section 1----------<BR>
<tiles:getAsString name="section1"/>

<BR>================<BR>

Section 2----------<BR>
<tiles:getAsString name="section2"/>
</BODY>
</HTML>


-----page 2, the display page
<%@ taglib uri="/layouts/struts-tiles.tld" prefix="tiles" %>
<tiles:insert page="testLayout.jsp" flush="true">
<tiles:put name="section1"></tiles:put>
<tiles:put name="section2">
This is section 2. The current system time is <%=
System.currentTimeMillis() %>
</tiles:put>
</tiles:insert>



View the display page, then hit reload. After you hit reload, you will
see something like this:

Section 1----------
This is section 2. The current system time is 1080945966646
================
Section 2----------
This is section 2. The current system time is 1080945967221



Kaboom!

Scott Johnson


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to