i'm new to struts. i will use struts tile in my Java EE project.
i read following page that illustrate how to use tile.
struts tiles examples
i read the page and try do all thing that mentained in the page. in the below you can my files detail.
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="moduleAware" value="true" />
</plug-in>
tiles-defs.xml:
<tiles-definitions>
<definition name="role.list" path="/WEB-INF/content/layout.jsp">
<put name="body" value="/WEB-INF/content/admin/restricted/role_list_body.jsp"
type="page" />
</definition>
role_list_body.jsp:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
List of Roles
</body>
</html>
and role_list.jsp is:
<body>
<sTile:insert beanName="role.list"/>
</body>
i think all of things is correct. but when i call role_list.jsp i get following error:
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: Error - Tag Insert : No value defined for bean 'role.list' with property 'null' in scope 'null'.
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:534)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:442)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
root cause
javax.servlet.ServletException: javax.servlet.jsp.JspException: Error - Tag Insert : No value defined for bean 'role.list' with property 'null' in scope 'null'.
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:911)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:840)
org.apache.jsp.WEB_002dINF.content.admin.restericted.role.role_005flist_jsp._jspService(role_005flist_jsp.java:80)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
root cause
javax.servlet.jsp.JspException: Error - Tag Insert : No value defined for bean 'role.list' with property 'null' in scope 'null'.
org.apache.struts.tiles.taglib.InsertTag.processBean(InsertTag.java:667)
org.apache.struts.tiles.taglib.InsertTag.createTagHandler(InsertTag.java:483)
org.apache.struts.tiles.taglib.InsertTag.doStartTag(InsertTag.java:441)
org.apache.jsp.WEB_002dINF.content.admin.restericted.role.role_005flist_jsp._jspx_meth_sTile_005finsert_005f0(role_005flist_jsp.java:97)
org.apache.jsp.WEB_002dINF.content.admin.restericted.role.role_005flist_jsp._jspService(role_005flist_jsp.java:70)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.12 logs.
do you know what this problem occourred.
thanks.
i find problem.
in the role_list.jsp i replace
<sTile:insert beanName="role.list" />
with <sTile:insert definition="role.list" />
now it works true.