Jersey - Freemarker - 使用自定义ViewProcessor

时间:2012-04-19 16:42:00

标签: jersey freemarker

我的模板已呈现,但没有freemarker处理。 输出是

<html>
<body>
    <h1>Welcome ${user}</h1>
</body>
</html>  

变量用户尚未被其值替换。

所以我不确定Jersey对我的自定义ViewProcessor有所了解。我怎么能明确地告诉Jersey我想使用Freemarker ViewProcessor。

我见过以下示例,但没有帮助 http://search.maven.org/#browse%7C-1697896452

总结一下,我有:

在我的pom.xml中

<dependency>
    <groupId>com.sun.jersey.contribs</groupId>
    <artifactId>jersey-freemarker</artifactId>
    <version>1.12</version>
</dependency>

在我的JerseyServletModule

Map<String, String> params = new HashMap<String, String>();
params.put("com.sun.jersey.freemarker.templateBasePath", "freemarker");
serve("/*").with(GuiceContainer.class, params); 

在我的TestResource

@Path("/test")
@GET
@Produces("text/html")
public Viewable getMytestView() {
    Map<String, Object> map = new HashMap<String, Object>();
    map.put("user", "Peter");
    return new Viewable("/test.ftl", map);
}

在我的src / main / resources / freemarker / test.ftl

<html>
<body>
    <h1>Welcome ${user}</h1>
</body>
</html>  

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

好的,现在有效。对不起,这肯定是一个缓存问题。