構成ファイルまたは自分のサブクラスでデコレータを定義する必要があることはわかっていますConfigurableSiteMeshFilter。例えば:
public class SitemeshFilter extends ConfigurableSiteMeshFilter {
@Override
protected void applyCustomConfiguration(final SiteMeshFilterBuilder builder) {
builder.addDecoratorPath("/*", "/WEB-INF/views/layouts/default.jsp");
}
}
これは私にとってはうまくいきますが、これは完璧ではありません。JSPファイルで直接使用するデコレータを定義できますか?
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
<html sitemesh:decorator="layouts/default.jsp"> <!-- something like this -->
<head>
<title>Home</title>
<meta content="test" name="description" />
</head>
<body>
<h1>Hello world!</h1>
${body}
</body>
</html>