Я пытаюсь украсить страницу несколькими декораторами, используя сетку сайта 3. Проблема возникает, когда я добавляю больше страниц, некоторые страницы украшаются другим декоратором, что приводит к неправильному оформлению страницы.
Вот что я пытаюсь сделать:
- Украсьте
/и/loginдвумя декораторами. - Украсьте
/welcomeдвумя разными декораторами.
Пока sitemesh3.xml выглядит так:
<?xml version="1.0" encoding="UTF-8"?>
<sitemesh>
<mapping>
<path>/</path>
<decorator>/decorator1.jsp</decorator>
<decorator>/decorator1-2.jsp</decorator>
</mapping>
<mapping>
<path>/login</path>
<decorator>/decorator1.jsp</decorator>
<decorator>/decorator1-2.jsp</decorator>
</mapping>
<mapping>
<path>/welcome</path>
<decorator>/decorator2.jsp</decorator>
<decorator>/decorator2-2.jsp</decorator>
</mapping>
</sitemesh>
Проблема в том, что /welcome украшают decorator1 и decorator1-2
Может кто-нибудь объяснить, что я пропустил здесь?
Кстати, могу ли я использовать несколько <path> внутри сопоставления для сопоставления нескольких местоположений с одним или несколькими декораторами, или каждый путь должен быть объявлен отдельно.
Я знаю, что могу использовать /* для сопоставления всех страниц, но что, если я хочу что-то вроде:
<mapping>
<path>/admin/*</path>
<path>/manage/*</path>
<path>/secured/admin/*</path>
<decorator>decorator.jsp</decorator>
</mapping>