如何在打包到单独的WAR的java servlet之间共享模板?

时间:2016-03-05 17:40:43

标签: java servlets tomcat7 freemarker

我有 Freemarker模板,我希望在我的Java Servlet之间分享,并将其打包到单独的 WAR。

此类常用模板的正确位置是什么? 我使用Apache Tomcat 7,我不想将它们全部放到/var/lib/tomcat7

这个问题关于如何共享应用程序代码以及在Java中放置JAR文件或如何使用extends的位置。关于如何共享web.xml,甚至

问题是如何共享常用模板以及共享模板的正确位置。

1 个答案:

答案 0 :(得分:1)

取决于为什么需要这样做。一种可能性是将模板放入一个战争依赖的(可能是传递性的)Maven工件中。然后,您可以使用ClassTemplateLoader来访问它们。另一种可能性是在某个地方有一个应用程序主目录,如/var/lib/myapp,然后在其中有一个templates子目录(以后可能还有一些其他共享应用程序数据)。应该使用环境变量或Java System属性指定应用程序主目录,因此可以由安装应用程序的人员决定,应用程序可以读取它的内容。然后在war-s中你可以使用FileTemplateLoader来加载模板。