Я пытаюсь объединить стойки 1.x с плитками 1.1, но у меня возникли проблемы.
Вот фрагмент кода struts-config.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_3.dtd">
<struts-config>
<!-- ..... -->
<!-- ..... -->
<action path="/listcategories"
type="com.wrox.begjsp.ch28.bookstore.controller.ListCategoriesAction"
scope="request">
<forward name="success" path="list.categories"/>
</action>
<!-- ..... -->
<plug-in className="org.apache.struts.tiles.TilesPlugin" >
<set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />
<set-property property="definitions-debug" value="2" />
<set-property property="definitions-parser-details" value="2" />
<set-property property="definitions-parser-validate" value="true" />
</plug-in>
</struts-config>
А вот фрагмент кода tile-defs.xml (на который ссылается Struts-config.xml):
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
<tiles-definitions>
<definition name="view.abstract" path="/WEB-INF/jsp/layout/standard-layout.jsp">
<put name="header" value="/WEB-INF/jsp/tiles/header.jsp" />
<put name="menu" value="bookstore.menu" />
<put name="base" value="/WEB-INF/jsp/tiles/base.jsp" />
</definition>
<definition name="list.categories" extends="view.abstract">
<put name="body" value="/WEB-INF/jsp/tiles/category-list.jsp" />
</definition>
</tiles-definitions>
Когда com.wrox.begjsp.ch28.bookstore.controller.ListCategoriesAction Действие завершается успешно, мы получаем странное исключение, утверждающее, что атрибут path не может иметь значение, начинающееся с /, то есть «list.categories», что означает, что он не может интерпретировать, что это не путь, а определение, определенное в файлеiles-defs.xml.
Я не гуру плиток, но я думаю, что он должен знать, как интерпретировать это значение!