• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2066
  • Last Modified:

Tiles: No Such definition error.

Hi. I have a struts 2, hibernate, spring. In struts, I integrate with tiles. Initially I use struts 2.0.8. Now I migrate to use struts 2.1.6. After chaning all the jars, I got following error in starting page. It seems it could not find my definitions. Are there some jars missing or Are there some mis configured parameters? Your help is highly appreciated.

HTTP Status 500 -
 
type Exception report
 
message
 
description The server encountered an internal error () that prevented it from fulfilling this request.
 
exception
 
javax.servlet.ServletException: javax.servlet.jsp.JspException: Error executing tag: welcome
	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:837)
	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:774)
	org.apache.jsp.WEB_002dINF.jsp.index_jsp._jspService(index_jsp.java:71)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:389)
	org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
	org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
 
root cause
 
org.apache.tiles.definition.NoSuchDefinitionException: welcome
	org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:578)
	org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:246)
	org.apache.tiles.jsp.taglib.InsertDefinitionTag.render(InsertDefinitionTag.java:63)
	org.apache.tiles.jsp.taglib.RenderTagSupport.execute(RenderTagSupport.java:154)
	org.apache.tiles.jsp.taglib.RoleSecurityTagSupport.doEndTag(RoleSecurityTagSupport.java:75)
	org.apache.tiles.jsp.taglib.ContainerTagSupport.doEndTag(ContainerTagSupport.java:80)
	org.apache.jsp.WEB_002dINF.jsp.index_jsp._jspx_meth_tiles_005finsertDefinition_005f0(index_jsp.java:89)
	org.apache.jsp.WEB_002dINF.jsp.index_jsp._jspService(index_jsp.java:64)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:389)
	org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
	org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
 
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.27 logs.

Open in new window

index.jsp.txt
Layout.jsp.txt
struts.xml.txt
web.xml.txt
Taglibs.jsp.txt
0
JianJunShen
Asked:
JianJunShen
  • 4
  • 2
2 Solutions
 
objectsCommented:
where are your tiles defs?

0
 
JianJunShenAuthor Commented:
Sorry, I forget to upload it. I will upload it next Tuesday.
0
 
JianJunShenAuthor Commented:
Here comes tiles-defs.xml Thanks in advance
tiles-defs.xml.txt
0
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
objectsCommented:
does the log show the tiles being loaded during startup?
check log for errors during startup

0
 
JianJunShenAuthor Commented:
Yes, you are right. Tiles are not correctly loaded. It is because listener is properly configured. I will make another post to give the soluction.
0
 
JianJunShenAuthor Commented:
The following codes show the correct configuration. Please note:  <dispatcher>REQUEST</dispatcher>
                                                                                                                          <dispatcher>INCLUDE</dispatcher>
   <filter>
         <filter-name>filterDispatcher</filter-name>
         <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
     </filter>
 
   
    <filter-mapping>
            <filter-name>filterDispatcher</filter-name>
            <url-pattern>/*</url-pattern>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>INCLUDE</dispatcher>
    </filter-mapping>

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now