Wow, that's pretty cool ... I'll have to check out the controllerClass stuff sometime :)

Domingo A. Rodriguez S. wrote:

Hi Robert..

I guess you could achieve the same using the controllerClass attribute and
building your class.. For instance, I have this definition in the
tiles-defs.xml file:
---
<definition name=".layout" path="/common/layout.jsp"
controllerClass='com.dars.XTileAction'>
<put name="title" value="Encabezado primario"/>
<put name="leftside" value="/common/leftside.jsp"/>
<put name="rightside" value="/common/rightside.jsp"/>
<put name="header" value="/common/header.jsp"/>
<put name="footer" value="/common/footer.jsp"/>
<put name="body" value="/common/body.jsp"/>
</definition>
---
And I have this controllerClass
---
package com.dars;
import org.apache.struts.tiles.actions.TilesAction;
import org.apache.struts.tiles.ComponentContext;
import org.apache.struts.tiles.Controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import java.io.IOException;


public class XTileAction extends TilesAction implements Controller{
public void perform(ComponentContext tilesctx,
HttpServletRequest request,
HttpServletResponse response,
ServletContext servctx) throws ServletException, IOException{
/* GetAttributes */
String titulo= (String)tilesctx.getAttribute("title");
String derecha= (String)tilesctx.getAttribute("rightside");
/* GetAttributes */ System.out.println(" Titulo: "+titulo);
System.out.println(" Derecha: "+derecha);
/* SetAttributes */
tilesctx.putAttribute("title", "Titulo nuevo de esta vaina..");
tilesctx.putAttribute("rightside", "/common/footer.jsp");
/* SetAttributes */
}
}
---
You can change the values of those attributes at runtime. I prefer to do
it using this method.


Atte.
Domingo A. Rodriguez S.


--- Robert Taylor <[EMAIL PROTECTED]> escribi�: > Greetings, I have a
tiles definition in my tiles-defs.xml similar to


below:

<definition name="search" extends="layout">
   <put name="heading" value="{0}Search" type="string" />
   <put name="content" value="/search.jsp" type="page" />
 </definition>

which I would like to be able to modify the "heading" value such that
at runtime I could substitute a value for {0}.


For example, it would be ideal to use a JSTL type of syntax such as:

<definition name="search" extends="layout">
   <put name="heading" value="${param.myValue}Search" type="string" />
   <put name="content" value="/search.jsp" type="page" />
 </definition>

but this does not work.



robert

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




_________________________________________________________ Do You Yahoo!? Informaci�n de Estados Unidos y Am�rica Latina, en Yahoo! Noticias. Vis�tanos en http://noticias.espanol.yahoo.com

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




-- Brice D. Ruth Sr. IT Analyst Fiskars Brands, Inc.


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



Reply via email to