2016-09-29 72 views
0

我使用apache瓷砖春天mvc。如何使用apache瓷砖弹簧mvc加载部分页面

布局是这样的: enter image description here

的tiles.xml文件是:

<!-- Default Layout --> 
<definition name="default_layout" template="/jsp/layout/default_layout.jsp"> 
    <put-attribute name="header" value="/jsp/header_footer/top_bar.jsp" /> 
    <put-attribute name="menu" value="/jsp/left_menu/menu.jsp" /> 
    <put-attribute name="body1" value="" /> 
    <put-attribute name="right_pane" value="/jsp/right_pane/right_pane.jsp" /> 
    <put-attribute name="footer" value="/jsp/header_footer/footer.jsp" /> 
</definition> 

<definition name="home" extends="default_layout"> 
    <put-attribute name="body1" value="/jsp/home/home.jsp" /> 
</definition> 

现在它工作正常,除了场景中,当我点击菜单上,然后整个页面获取重新加载。我丢失了点击的菜单部分。

菜单被实现为

<ul> 
<li></li> 
........ 
........ 
<li></li> 
</ul> 

那么,有没有什么办法可以部分地加载的瓷砖,或者周围的任何工作,我可以用它来解决这个问题?

回答

0

tiles.xml文件

<definition name="templatename" 
      template="/WEB-INF/pages/layout.jsp"> 
    <put-attribute name="header" value="/WEB-INF/pages/includes/header.jsp" /> 
    <put-attribute name="sidebar" value="WEB-INF/pages/includes/sidebar.jsp" /> 
    <put-attribute name="body" value="" /> 
    <put-attribute name="rightsidebar" value="/WEB-INF/pages/includes/rightsidebar.jsp" /> 
    <put-attribute name="footer" value="/WEB-INF/pages/includes/footer.jsp" /> 
</definition> 

tiles.xml提到的页眉,页脚,侧边栏右侧目录下创建页面,并通过layout.jsp与标签创建模板名称

<tiles:insertAttribute name="header" /> 
<tiles:insertAttribute name="sidebar" /> 
<tiles:insertAttribute name="rightsidebar" /> 
<tiles:insertAttribute name="body" /> 
<tiles:insertAttribute name="footer" /> 

,那么你可以调用该页面通过spring-mvc控制器的url-pattern。

添加这tiles.xml

<definition name="/dosomething" extends="templatename"> 
    <put-attribute name="title" value="dosomething" /> 
    <put-attribute name="body" value="/WEB-INF/pages/login/dosomething.jsp" /> 
</definition> 

对身体局部负载创建一个页面dosomething.jsp