title: Tiles Refresh only body content
body: <p>I have apache Tiles layout page having Header, Menu, Body. In this layout Reload the whole Layout is refreshing. I want header,menu to be static, and only body part should get refresh.</p>
  
  <pre><code>(1)write this tiles configuration into spring xml file.
      &lt;bean id="viewResolver" class="org.springframework.web.servlet.view.tiles3.TilesViewResolver"/&gt;
  
          &lt;bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles3.TilesConfigurer"&gt;
              &lt;property name="definitions"&gt;
                  &lt;list&gt;
                      &lt;value&gt;/WEB-INF/layouts/layouts.xml&lt;/value&gt;
                      &lt;value&gt;/WEB-INF/layouts/views.xml&lt;/value&gt;
                  &lt;/list&gt;
              &lt;/property&gt;
          &lt;/bean&gt;
  
  (2)layouts.xml file 
  &lt;?xml version="1.0" encoding="UTF-8"?&gt;
   &lt;!DOCTYPE tiles-definitions PUBLIC  
          "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"  
          "http://tiles.apache.org/dtds/tiles-config_3_0.dtd"&gt;
  &lt;tiles-definitions&gt;
  
      &lt;definition name="DefaultTemplate" template="/WEB-INF/views/template/SiteTemplate.jsp"&gt;
          &lt;put-attribute name="title"     value="Home" /&gt;
          &lt;put-attribute name="header"    value="/WEB-INF/views/template/header.jsp" /&gt;
          &lt;put-attribute name="menu"      value="/WEB-INF/views/template/menu.jsp" /&gt;
          &lt;put-attribute name="body"      value="" /&gt;
          &lt;put-attribute name="footer"    value="/WEB-INF/views/template/footer.jsp" /&gt;
      &lt;/definition&gt;
  
  &lt;/tiles-definitions&gt;
  
  (3)views.xml
  &lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;!DOCTYPE tiles-definitions PUBLIC
      "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"
      "http://tiles.apache.org/dtds/tiles-config_3_0.dtd"&gt;
  &lt;tiles-definitions&gt;
  
      &lt;definition name="index" extends="DefaultTemplate"&gt;
          &lt;put-attribute name="body"  value="/WEB-INF/views/index.jsp" /&gt;
      &lt;/definition&gt;
  
      &lt;definition name="personList" extends="DefaultTemplate"&gt;
          &lt;put-attribute name="body"  value="/WEB-INF/views/personList.jsp" /&gt;
      &lt;/definition&gt;
  
  &lt;/tiles-definitions&gt;
  
  (4)SiteTemplate.jsp
  
      &lt;%@ page language="java" contentType="text/html; charset=ISO-8859-1"
          pageEncoding="ISO-8859-1"%&gt;
      &lt;%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%&gt;
      &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
      &lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
      &lt;head&gt;
          &lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&gt;
          &lt;title&gt;Spring MVC - Tiles Integration tutorial&lt;/title&gt;
          &lt;link rel="stylesheet" href="resources/css/screen.css" type="text/css" media="screen, projection"&gt;&lt;/link&gt;
          &lt;link rel="stylesheet" href="resources/css/print.css" type="text/css" media="print"&gt;&lt;/link&gt;
          &lt;!--[if IE]&gt;
          &lt;link rel="stylesheet" href="resources/css/ie.css" type="text/css" media="screen, projection"&gt;
          &lt;![endif]--&gt;
      &lt;style&gt;
      body{ margin-top:20px; margin-bottom:20px; background-color:#DFDFDF;}
      &lt;/style&gt;
      &lt;/head&gt;
      &lt;body&gt;
          &lt;div class="container" style="border: #C1C1C1 solid 1px; border-radius:10px;"&gt;
              &lt;!-- Header --&gt;
              &lt;tiles:insertAttribute name="header" /&gt;
              &lt;!-- Menu Page --&gt;
              &lt;div class="span-5  border" style="height:400px;background-color:#FCFCFC;"&gt;
                  &lt;tiles:insertAttribute name="menu" /&gt;
              &lt;/div&gt;
              &lt;!-- Body Page --&gt;
              &lt;div class="span-19 last"&gt;
                  &lt;tiles:insertAttribute name="body" /&gt;
              &lt;/div&gt;
              &lt;!-- Footer Page --&gt;
              &lt;tiles:insertAttribute name="footer" /&gt;
          &lt;/div&gt;
      &lt;/body&gt;
      &lt;/html&gt;
  
  (5)menu.jsp
  
      &lt;%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%&gt;
      &lt;ul style="list-style:none;line-height:28px;"&gt;
  
          &lt;li&gt;&lt;spring:url value="/index" var="homeUrl" htmlEscape="true" /&gt;
              &lt;a href="${homeUrl}"&gt;Home&lt;/a&gt;
          &lt;/li&gt;
  
          &lt;li&gt;&lt;spring:url value="/viewPeson" var="personListUrl" htmlEscape="true" /&gt;
              &lt;a href="${personListUrl}"&gt;Person List&lt;/a&gt;
          &lt;/li&gt;
  
      &lt;/ul&gt;
  
  (6)same as write footer.jsp and header.jsp for your requirement.
  
  (7)code for controlller
  
      @RequestMapping(value="index")
          public String index() {
              return "index";
          }
  </code></pre>
  
  <p>Is there any way to prevent the refresh of the Header, menu and update only Body content on the menu click which can be implemented using Apache Tiles 3 ?</p>