When I changed <tiles:insertAttribute name="/baseLayout.jsp" flush="true">      
  <tiles:putAttribute name="title" value="Tiles Example"/>  TO         
<tiles:insertTemplate template="/baseLayout.jsp" flush="true">            
<tiles:putAttribute name="title" value="Tiles Example"/>
Finally the page loaded. Thank you.
Actually I need to upgrade a huge and very old govt application to spring 4.1.x 
and Hibernate 4 which intern forced to change Tiles 1.x to 2.x. As the 
application use Struts1.x, it became bit difficult as nigrating to Struts 2.x 
is a huge task which will not fit into the time frame.
So before implementing the struts 1.x with Tiles 2 in the application directly, 
I was trying to convert a sample struts1.x/Tiles 1.x project to Struts 
1.x/Tiles 2.x. That is where all this issues poped up. 
Back to the issue:
Once the page is loaded, there was a validator issue while clicking on a link. 
upn the server startup itself it was displaying an 
error:java.lang.NoSuchMethodError: 
org.apache.commons.validator.ValidatorResources.<init>([Ljava/net/URL;)V at 
org.apache.struts.validator.ValidatorPlugIn.initResources(ValidatorPlugIn.java:251)
 at org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:174) 
at 
org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:891)
when I changed the commons-validator.jar TO commons-validator-1.4.0,jar, that 
error went off. But while clicking the link it displays a message in the 
console as below:
:-8000-00000000000004f5,0] [APP: sampleTiles2] Cannot find TilesContextFactory 
class 
org.apache.tiles.portlet.context.PortletTilesApplicationContextFactory:-8000-00000000000004f5,0]
 [APP: sampleTiles2] Cannot find TilesContextFactory class 
org.apache.tiles.portlet.context.PortletTilesApplicationContextFactory:-8000-00000000000004f5,0]
 [APP: sampleTiles2] Cannot find TilesContextFactory class 
org.apache.tiles.portlet.context.PortletTilesApplicationContextFactory00-00000000000004f5,0]
 [APP: sampleTiles2] Cannot find TilesRequestContextFactory class 
org.apache.tiles.portlet.context.PortletTilesRequestContextFactory00-00000000000004f5,0]
 [APP: sampleTiles2] Unable to find configured definition '/WEB-INF/tiles.xml' 
[APP: sampleTiles2] The created container is not instance of 
KeyedDefinitionsFactoryTilesContainer and cannot be configured correctly
My tiles-defs.xml
    <definition name="base.definition" template="/baseLayout.jsp">        
<put-attribute name="title"  value="Tiles Example" />        <put-attribute 
name="header" value="/header.jsp" />        <put-attribute name="menu"   
value="/menu.jsp" />        <put-attribute name="body"   value="/body.jsp" />   
     <put-attribute name="footer" value="/footer.jsp" />            
</definition>    <definition name="friends" extends="base.definition">        
<put-attribute name="title" value="Friends" />        <put-attribute 
name="body" value="/friends.jsp" />    </definition>    <definition 
name="office" extends="base.definition">        <put-attribute name="title" 
value="The Office" />        <put-attribute name="body" value="/office.jsp" />  
  </definition>

Any thoughts? :) Once again thank you for your big chink of time for this issue.
ThanksVenu

 

    On Friday, 17 March 2017 12:50 PM, Torsten Krah <krah...@gmail.com> wrote:
 

 This seems kind of strange:

https://tiles.apache.org/framework/tiles-jsp/tlddoc/tiles/insertAttribute.html

/baseLayout.jsp is not a name of an attribute but the template name of
the definition, looks suspicious to me.

Maybe you mean:

https://tiles.apache.org/framework/tiles-jsp/tlddoc/tiles/insertTemplate.html

If you look here:

https://tiles.apache.org/framework/tiles-jsp/tlddoc/tiles/tld-summary.html

This looks like the one you're looking for:

<tiles:insertTemplate template="/basic/myLayout.jsp" flush="true">
                  <tiles:putAttribute name="title" value="My first
page" />
                  <tiles:putAttribute name="header"
value="/common/header.jsp" />
                  <tiles:putAttribute name="footer"
value="/common/footer.jsp" />
                  <tiles:putAttribute name="menu"
value="/basic/menu.jsp" />
                  <tiles:putAttribute name="body"
value="/basic/helloBody.jsp" />
                </tiles:insertTemplate>



Could you double check that.

kind regards

Torsten

Am Freitag, den 17.03.2017, 16:07 +0000 schrieb Venu Gopalan:
> <tiles:insertAttribute name="/baseLayout.jsp" flush="true">
> <tiles:putAttribute name="title" value="Tiles Example"/>
> <tiles:putAttribute name="header" value="/header.jsp" />
> <tiles:putAttribute name="menu" value="/menu.jsp" />
> <tiles:putAttribute name="body" value="/body.jsp" />
> <tiles:putAttribute name="footer" value="/footer.jsp" />
> </tiles:insertAttribute>




   

Reply via email to