Im an idiot for thinking this,
>>am I write in thinking that all template data is flushed into
EreportDesktopLayout.jsp.

In the examples I have been looking at I couldn't work out where the layout
page rsided
and what was in it, its not fully clicked yet but getting there.

my EreportDesktopLayout.jsp now looks like so,

<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<tiles:insert attribute="header"/>
<tiles:insert attribute="customHeader"/>
<tiles:insert attribute="desktopLayout"/>
<tiles:insert attribute="footer"/>

im getting content returned now however my header file is not rendering my
style sheet,
<tiles:insert attribute="header"/> which is
/WEB-INF/jspf/htmlComponents/eReportHeader.jspf

<snip>
        <%@ taglib uri="/WEB-INF/struts-html-el.tld" prefix="html" %>
        <%@ taglib uri="/WEB-INF/c.tld" prefix="c"%>
        <html>
        <head>
        <title>Neo E-Reports</title>
        <link href="<html:rewrite page="/styles/neoStyles.css"/>"
rel="stylesheet" type="text/css">
</snip>

my style sheet is not getting rendered now, instead when I view source it
is,
<link href="<html:rewrite page="/styles/neoStyles.css"/>" rel="stylesheet"
type="text/css">


-----Original Message-----
From: John McCosker [mailto:[EMAIL PROTECTED]
Sent: 12 January 2005 12:05
To: 'Struts Users Mailing List'
Subject: getting tiles to work


hi,

just trying to configure my application here so it can use tiles,
however I have been running into some difficulties, I managed to get round
them
and now my result is any empty response.

I redirect to my base jsp page from my Action,

contents of base jsp template eReportDesktop.jsp
------------------

<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>

<tiles:insert page="/layouts/EreportDesktopLayout.jsp" flush="true">
        <tiles:put name="header"
value="/WEB-INF/jspf/htmlComponents/eReportHeader.jspf" />
        <tiles:put name="customHeader"
value="/WEB-INF/eReports/header/eReportCustomerHeader.jsp" />
        <tiles:put name="desktopLayout"
value="/WEB-INF/eReports/deskTopLayout/jspf/deskTopLayout.jspf" />
        <tiles:put name="footer"
value="/WEB-INF/jspf/htmlComponents/eReportFooter.jspf" />
</tiles:insert>

all the <tiles:put> templates contain all the data to build the finished
template to be returned,
EreportDesktopLayout.jsp is effectively blank, am I write in thinking that
all template data is flushed
into EreportDesktopLayout.jsp. If not I don't understand this, interesting
but I don't understand.

My configuration is like so,
tomcat 4.01 , struts 1.1

struts-config (I declare the pulgin)
<!--tiles plugin-->
        <plug-in className="org.apache.struts.tiles.TilesPlugin">
                <set-property property="definitions-config"
value="/WEB-INF/struts-tiles-defs.xml"/>
                <set-property property="definitions-debug" value="2"/>
                <set-property property="definitions-parser-details"
value="2"/>
                <set-property property="definitions-parser-validate"
value="true"/>
                <set-property property="moduleAware" value="true"/>
        </plug-in>

if I leave this attribute/element out <set-property
property="definitions-config" value="/WEB-INF/struts-tiles-defs.xml"/>
it flakes,
so I had to create a file struts-tiles-defs.xml,

struts-tiles-defs.xml
---------------------

<!DOCTYPE tiles-definitions PUBLIC 
        "-//Apache Software Foundation//DTD Tiles Configuration//EN"
        "http://jakarta.apache.org/struts/dtds/tiles-config.dtd";>
        
        <tiles-definitions>
                <definition name="test"
path="/layouts/EreportDesktopLayout.jsp">
                        <put name="header"
value="/WEB-INF/jspf/htmlComponents/eReportHeader.jspf"/>
                        <put name="customHeader"
value="/WEB-INF/eReports/header/eReportCustomerHeader.jsp"/>
                        <put name="desktopLayout"
value="/WEB-INF/eReports/deskTopLayout/deskTopLayout.jspf"/>
                        <put name="footer"
value="/WEB-INF/jspf/htmlComponents/eReportFooter.jspf"/>
                </definition>
        </tiles-definitions>

I imported struts-tiles.tld into my web-inf,

made reference in my deployment descriptor web.xml

<taglib>
    <taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
  </taglib>

my resulting template eReportDesktop.jsp returns blank,
it used to be like this which worked fine,

<%@ include file="/WEB-INF/jspf/htmlComponents/eReportHeader.jspf" %>
<jsp:include page="/WEB-INF/eReports/header/eReportCustomerHeader.jsp" />
<%@ include file="/WEB-INF/eReports/deskTopLayout/deskTopLayout.jspf" %>
<%@ include file="/WEB-INF/jspf/htmlComponents/eReportFooter.jspf" %>

however I like the concept of tiles.

Any ideas would be greatly appreciated, thank you.

Reply via email to