有没有人在嵌入模式下使用Jersey(不是servlet env而是独立的Grizzly实例)成功使用模板引擎?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有人在嵌入模式下使用Jersey(不是servlet env而是独立的Grizzly实例)成功使用模板引擎?相关的知识,希望对你有一定的参考价值。

Velocity,Freemarker,Japid,Rythm,还有其他吗?我正在寻找的是类似于JSP在servlet环境中提供的解决方案。它应该是ViewProcessor实现的一种形式,但是在独立的嵌入式Grizzly部署(NIO架构)上工作。

答案

泽西岛支持freemarker模板 - 请参阅maven上的jersey-freemarker module。它适用于任何容器(即不依赖于servlet)。 Jersey工作区中还有freemarker示例,展示了如何使用它 - 请参阅here

另一答案

我认为您列出的所有模板引擎都可以在独立环境中使用。特别是对于Rythm(因为我是这个东西的作者),它加载来自不同来源的模板文件:

  1. 从提供的String内容: String result = Rythm.render("hello @who", "world");
  2. rythm.root设置中找到的文件: String result = Rythm.render("helloWorld.html", "world");
  3. 如果你没有rythm.root设置,从类路径找到的文件

它只是不依赖于任何servlet容器,所以只要你有JRE就可以自由使用它。如果要在不允许文件写入的GAE中使用它,请务必将rythm.noFileWrite设置为true

另一答案

开源项目

http://www.bitplan.com/index.php/SimpleRest

提供了一个TemplateResource基类,它将完成大部分“繁重的工作”,使Jersey,Grizzly和Rythm模板引擎很好地协同工作。

以上是关于有没有人在嵌入模式下使用Jersey(不是servlet env而是独立的Grizzly实例)成功使用模板引擎?的主要内容,如果未能解决你的问题,请参考以下文章

可以在没有 DI 容器的情况下使用 Jersey 吗?

如何在离线模式下运行 Jupyter Dash 应用程序

什么是泽西过滤器?

在生产模式下访问 Play 框架的嵌入式 H2 数据库

在没有DI框架的情况下注入存储库

请问serv-u 15这个版本 被动模式在哪儿设置?