Java Tiles2将¿;定义?

Java Tiles2将¿;定义?,java,struts2,tiles2,Java,Struts2,Tiles2,我正在使用struts2+tiles2,我想做以下工作。我有一个baseLayout,在这里我定义我的菜单、主体等,如下所示: <tiles:insertAttribute name="menu" /> <tiles:insertAttribute name="body" /> <definition name="/index" extends="baseLayout"> <put-attribute name="title" valu

我正在使用struts2+tiles2,我想做以下工作。我有一个baseLayout,在这里我定义我的菜单、主体等,如下所示:

<tiles:insertAttribute name="menu" />
<tiles:insertAttribute name="body" />
<definition name="/index" extends="baseLayout">    
    <put-attribute name="title" value="/public/menu.jsp" />
    <put-attribute name="body" value="/public/index.jsp" />
</definition>
baseLayout.jsp
<html>
    <head>
        <tiles:getAsString name="appendedFiles"/>
    </head>
<body>
<tiles:insert attribute="menu">
<tiles:insert attribute="body">
</body>
</html>

tiles-defs.xml
<definition name="baseLayout" path="/struts/baseLayout.jsp">
  <put name="cssfiles"><![CDATA[
    <link href="file1.css" rel="stylesheet" type="text/css">
    <link href="file2.css" rel="stylesheet" type="text/css">
  ]]></put>
</definition>

然后在我的tiles.xml中,我将它们设置为:

<tiles:insertAttribute name="menu" />
<tiles:insertAttribute name="body" />
<definition name="/index" extends="baseLayout">    
    <put-attribute name="title" value="/public/menu.jsp" />
    <put-attribute name="body" value="/public/index.jsp" />
</definition>
baseLayout.jsp
<html>
    <head>
        <tiles:getAsString name="appendedFiles"/>
    </head>
<body>
<tiles:insert attribute="menu">
<tiles:insert attribute="body">
</body>
</html>

tiles-defs.xml
<definition name="baseLayout" path="/struts/baseLayout.jsp">
  <put name="cssfiles"><![CDATA[
    <link href="file1.css" rel="stylesheet" type="text/css">
    <link href="file2.css" rel="stylesheet" type="text/css">
  ]]></put>
</definition>

因此,有时我会有更复杂的布局,可以在主体中使用多个jsp,其中一些jsp有一些内联脚本。 我想知道是否有任何方法可以将所有这些内联脚本附加到同一个位置。例如,我想在baseLayout中定义页面头,然后将所有内联脚本附加到此头。 我希望有一种方法可以做到这一点,但我发现tiles文档非常混乱,我还没有找到一种方法来做到这一点


谢谢

在tiles1中,我做过这样的事情:

<tiles:insertAttribute name="menu" />
<tiles:insertAttribute name="body" />
<definition name="/index" extends="baseLayout">    
    <put-attribute name="title" value="/public/menu.jsp" />
    <put-attribute name="body" value="/public/index.jsp" />
</definition>
baseLayout.jsp
<html>
    <head>
        <tiles:getAsString name="appendedFiles"/>
    </head>
<body>
<tiles:insert attribute="menu">
<tiles:insert attribute="body">
</body>
</html>

tiles-defs.xml
<definition name="baseLayout" path="/struts/baseLayout.jsp">
  <put name="cssfiles"><![CDATA[
    <link href="file1.css" rel="stylesheet" type="text/css">
    <link href="file2.css" rel="stylesheet" type="text/css">
  ]]></put>
</definition>
baseLayout.jsp
tiles-defs.xml
]]>
或者,您可以将内容放入单独的jsp中,然后像其他任何内容一样“tiles:insertAttribute”