如何动态加载scala模板

时间:2012-07-30 19:51:03

标签: java playframework-2.0

我想知道是否有任何方法使用playframework2动态加载模板和使用反射scala。在游戏中1.x我过去经常做以下事情:

   public static void template(String templateName) {
    renderTemplate("templateName");
}   

无论如何我可以用play2.x实现同样的目的吗?

Java示例/解决方案将不胜感激

1 个答案:

答案 0 :(得分:2)

您可以通过反射获取模板对象,然后使用结构类型调用其apply方法。

val c = Class.forName(fullyQualifiedTemplateClassName + "$")
val template = c.getField("MODULE$").get(c).asInstanceOf[{def apply():Html}]

Ok(template())