当前位置: 首页 > 面试题库 >

嵌套Apache Tiles模板

宇文和同
2023-03-14
问题内容

所以我找到了这个:http : //tiles.apache.org/framework/tutorial/advanced/nesting-
extending.html

这是示例:

<definition name="myapp.homepage" template="/layouts/classic.jsp">
  <put-attribute name="title" value="Tiles tutorial homepage" />
  <put-attribute name="header" value="/tiles/banner.jsp" />
  <put-attribute name="menu" value="/tiles/common_menu.jsp" />
  <put-attribute name="body">
    <definition template="/layouts/three_rows.jsp">
      <put-attribute name="one" value="/tiles/headlines.jsp" />
      <put-attribute name="two" value="/tiles/topics.jsp" />
      <put-attribute name="one" value="/tiles/comments.jsp" />
    </definition>
  </put-attribute>
  <put-attribute name="footer" value="/tiles/credits.jsp" />
</definition>

所以我定义了这个:

<definition name="mgmt.base.layout" extends="base.layout">
     <put-attribute name="body">
         <definition template="/WEB-INF/mgmt/config/mgmtBody.jsp"/>
             <put-attribute name="adminLeft"  value="/WEB-INF/mgmt/config/left.jsp"/>
             <put-attribute name="adminRight" value="/tiles/blank.html"/>
         </definition>
     </put-attribute>
</definition>

但是有趣的是,即使他们自己的文档也是错误的:

2009-05-12 11:20:56,088 [main]错误-
org.apache.commons.digester.Digester.error(Digester.java:1635):第17行第68列的解析错误:属性“名称”是必需的,并且必须为元素类型“定义”指定。
org.xml.sax.SAXParseException:属性“名称”是必需的,必须为元素类型“定义”指定。

即使我为其定义了一个名称,它仍然会出现以下错误:

2009-05-12 11:35:31,818 [main]错误-
org.apache.commons.digester.Digester.error(Digester.java:1635):第21行第19列的解析错误:元素类型“
put-属性”必须匹配“空”。 org.xml.sax.SAXParseException:元素类型“ put-attribute”的内容必须与“
null”匹配。

这是什么意思?!!!!


问题答案:

您使用的架构要求put-attribute是叶节点,即不能包含子元素-
因此您不能这样做。找出架构的较新版本(必须在Tiles文档或示例中)是否允许嵌套tile模板。

-卡尔

因此,基本上,我使用的是旧版磁贴并使用新版本架构:这是旧版嵌套架构的语法:http : //tiles.apache.org/2.0/framework/tutorial/advanced/nesting-
extending.html



 类似资料:
  • 我需要使我的输出像预期的输出一样。我试图添加符号,但输出不像预期的输出 这是我的代码:

  • 短版 使用Spring时,如何在Thymeleaf中创建嵌套模板?Spring中的属性中似乎不支持星号符号()。是否有变通/不同的标签可供使用? 长版本 例如,假设我有以下课程: 所以我做了一个Thymeleaf模板: 我们用一个样本

  • 问题内容: 可以定义从facelets中的其他模板继承的模板吗? 像这样 然后viewUsers.xhtml将被浏览器调用 问题答案: 是的,绝对有可能。

  • 了解如何在 Dreamweaver 中创建用于控制共享设计元素的页面中的内容的嵌套模板。 嵌套模板是指其设计和可编辑区域都基于另一个模板的模板。嵌套模板对于控制共享许多设计元素的站点页面中的内容很有用,但在各页之间有些差异。例如,基本模板中可能包含更宽广的设计区域,并且可以由站点的许多内容提供者使用,而嵌套模板可能进一步定义站点内特定部分的页面中的可编辑区域。 基本模板中的可编辑区域被传递到嵌套模

  • 我使用MapStruct来映射我的实体,我使用Mockito来嘲笑我的对象。 我想用MapStruct测试一个包含映射的方法。问题是嵌套映射器在我的单元测试中总是为null(在应用程序中工作得很好)

  • 但是,我必须验证manager和operator的id是否有效,也就是说,我将验证user表中是否有匹配的id。 所以我想知道如何实现这种验证? 更新1:使用验证器

  • 问题内容: 我的问题涉及到如何处理AngularJS应用程序中模板的复杂嵌套(也称为partials)。 如您所见,这有可能成为具有许多嵌套模型的相当复杂的应用程序。 该应用程序是单页的,因此它将加载index.html,该索引包含DOM中具有ng-view属性的div元素。 对于第1圈,您看到有一个主导航将相应的模板加载到中ng-view。我通过传递$routeParams给主应用程序模块来实现