Hi all, I am trying to standardize the look and feel to my web app, first idea was to use filters that modifies the contents of all web pages and format it to the desired layout. of course, there were Tiles to do that, so why re-invent the wheel? I went through a little problem, when tried to register the tile definition and use it as a bean to load up during application startup.. as per Ted Husted tutorials (thanks a lot Ted :)) here is my situation : -Struts 1.1 -Jdeveloper 10g
tiles-defs.xml: <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configurations 1.1//EN" "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd"> <tiles-definitions> <!-- Standard definitions --> <definition name="stdLayoutDef" path="/Layout/stdLayout.jsp"> <put name="title" value="Title String" /> <put name="header" value="/Layout/stdHeader.jsp" /> <put name="footer" value="/Layout/stdFooter.jsp" /> <put name="body" value="/res/error/resStatusReport.jsp" /> </definition> </tiles-definitions> struts-config.xml: ... <plug-in className="org.apache.struts.tiles.TilesPlugin"> <set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml"/> <set-property property="definitions-parser-validate" value="true"/> <set-property property="moduleAware" value="true"/> </plug-in> ... Jsp file: stdStatusReport.jsp <%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles"%> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%> <%@ include file="/Layout/stdDefinition.jspf"%> <tiles:insert beanName="stdLayoutDef" flush="true"> <tiles:put name="title" type="string"> <bean:message key='title.statusreport' /> </tiles:put> <tiles:put name="header" value="/Layout/stdHeader.jsp" /> <tiles:put name="body" value="/res/error/resStatusReportBody.jsp" /> <tiles:put name="footer" value="/Layout/stdFooter.jsp" /> </tiles:insert> The Log report with the error: 500 Internal Server Error javax.servlet.jsp.JspException: Error - Tag Insert : No value defined for bean 'stdLayoutDef' with property 'null' in scope 'null'. at org.apache.struts.taglib.tiles.InsertTag.processBean(InsertTag.java:667) at org.apache.struts.taglib.tiles.InsertTag.createTagHandler(InsertTag.java:491) at org.apache.struts.taglib.tiles.InsertTag.doStartTag(InsertTag.java:451) at _res._error._resStatusReport._jspService(resStatusReport.jsp:5) [/res/error/resStatusReport.jsp] at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:139) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:348) at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509) at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:356) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:614) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:220) at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069) at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274) at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455) at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:320) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:356) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:614) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:784) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:270) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:112) at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192) at java.lang.Thread.run(Thread.java:536)

