2011-03-01 22 views
0

こんにちは: jspページに属性と定義を挿入する方法はわかりましたが、ネストタイルは挿入できません。ネストタイルの挿入方法

これはexmapleです:

<definition name="/commonPage" template="/jsp/common/template.jsp"> 
     <put-attribute name="header" value="/jsp/common/defaultHeader.jsp" /> 
     <put-attribute name="menu" value="/jsp/common/defaultMenu.jsp" /> 
     <put-attribute name="footer" value="/jsp/common/defaultFooter.jsp" /> 
    </definition> 


    <definition name="/all" extends="/commonPage"> 
     <put-attribute name="body" value="/jsp/all_body.jsp" /> 
     <put-list-attribute name="scriptList"> 
      <add-attribute value="/res/script/all.js" /> 
     </put-list-attribute> 
    </definition> 

    <definition name="/time" extends="/commonPage"> 
     <put-attribute name="timebar" value="/jsp/common/timebar.jsp" /> 
     <put-attribute name="body" value="/jsp/time_body.jsp" /> 
     <put-list-attribute name="scriptList"></put-list-attribute> 
    </definition> 

</tiles-definitions> 

そしてtempalte.jsp中:今すぐ

.... 
<tiles:insertAttribute name="meun"> 
... 
<tiles:insertAttribute name="footer"> 

、time_body.jspに、私は別のJSPを挿入したいです - timebar.jsp。

私は "/ time"の定義で属性を定義しますが、動作しません。

<div class="div_fullwidth"> 
    <tiles:insertAttribute name="timebar" /> 
</div> 

任意のアイデア:

これはtime_body.jspでのコードのですか?

答えて

1

これを行うときにエラーメッセージが表示されましたか?

編集: だからこれは私のタイルの構成です - 私は春を使用しています:

基本レイアウト - bodyタグ内のページの特定のコンテンツをせずに、一般的なレイアウト構造を保持している:

<tiles-definitions> 

<definition name="default" template="/WEB-INF/layouts/default.jspx"> 
    <put-attribute name="leftmenu" value="/WEB-INF/layouts/partial/leftmenu.jspx" /> 
    <put-attribute name="footer" value="/WEB-INF/layouts/partial/footer.jspx" /> 
    <put-attribute name="subheader" value="/WEB-INF/layouts/partial/subheader.jspx" /> 
    <put-attribute name="seoheader" value="/WEB-INF/layouts/partial/seoheader.jspx" /> 
</definition> 
    </tiles-definitions> 

ページ固有のビュー:

<tiles-definitions> 
<definition extends="default" name="advice/list"> 
    <put-attribute name="body" value="/WEB-INF/views/advice/list.jspx"/> 
</definition> 
</tiles-definitions> 

だから、そのページの特定のビューで、「アドバイス/リスト」私は、私はそれをやる新しい部分を追加したい:

<put-attribute name="timebar" value="/WEB-INF/layouts/partial/timebar.jspx" /> 

次に、単にadvice/listテンプレートの属性を呼び出します。

  1. WEB-INF/web.xmlファイルでタイル定義が正しく設定されているかどうかを確認できますか。
  2. 見つからないので、テンプレート属性パスの定義を変更してみてください。ところで

:私は私のpom.xmlに

<dependency> 
    <groupId>org.apache.tiles</groupId> 
    <artifactId>com.springsource.org.apache.tiles</artifactId> 
    <version>2.1.3</version> 
</dependency> 
+0

をその依存関係を使用していますがタイムバーが見つからないことができているようです。ところで、私はstruts-tiles-pluginを使用します。 – hguser

関連する問題