I'm just trying to Learn Tiles with Spring MVC. I haven't used Tiles Before. Please find the code attached:
servlet.xml
<context:component-scan base-package="org.sparsham.sparshammanagement.controllers" /> <bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView" /> <property name="prefix" value="/WEB-INF/pages"/> <property name="suffix" value=".jsp"></property> </bean> <bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer"> <property name="definitions"> <list> <value>/WEB-INF/tiles.xml</value> </list> </property> </bean>
My Tiles.xml
<tiles-definitions> <definition name="base.definition" template="/WEB-INF/pages/layout.jsp"> <put-attribute name="title" value="" /> <put-attribute name="header" value="/WEB-INF/pages/layout/header.jsp" /> <put-attribute name="menu" value="/WEB-INF/pages/layout/menu.jsp" /> <put-attribute name="body" value="" /> <put-attribute name="footer" value="/WEB-INF/pages/layout/footer.jsp" /> </definition> </tiles-definitions>
Then I created layout headers and footers.
@Controller
@RequestMapping("/")
public class Default {
@RequestMapping("index")
public String index(){
return "Sparsham";
}
@RequestMapping("*")
public String unhandled(){
return "error404";
}
}
What is the next step?
You have defined a default layout. Now you need to define definition for your view in tiles config file. Like:
<definition name="Sparsham" extends="base.definition">
<put-attribute name="title" value="Contact Manager" />
<put-attribute name="body" value="/WEB-INF/jsp/Sparsham.jsp" />
</definition>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.