play框架2.0.2中不存在渲染功能?

时间:2012-07-18 13:11:00

标签: java playframework controller render

我下载并安装了play framework 2.0.2,然后创建了一个项目。我把项目搞砸了,并在日食中打开了。

我有一个名为Application的类,它扩展了Controller类。在网络上的大多数示例中,我看到如下控制器。

public class Application extends Controller {
    public static void index() {
        render(arg0,arg1,...);
    }

    public static void tasks() {
         render(arg0,arg1,...);
    }

    public static void newTask() {
         render(arg0,arg1,...);
    }

    public static void deleteTask(Long id) {
        render(arg0,arg1,...);
    }
}

但是在我的默认应用程序中,我只能执行以下操作。我不知道怎么做前一个。

public class Application extends Controller {
    public static Result index() {
        return ok("Hello World!");
    }

    public static Result tasks() {
         return ok(indexabc.render("hello world"));
    }

    public static Result newTask() {
         return TODO;
    }

    public static Result deleteTask(Long id) {
        return TODO;
    }
}

在我的代码中,当我尝试用“void”替换“Result”返回类型时,没有问题。但是,当我想用​​一些参数调用“render()”方法时,该方法不存在。我找不到如何调用渲染函数的方法。

1 个答案:

答案 0 :(得分:3)

您在网络上看到的示例适用于Play 1.x,而您在Controller中获得的版本适用于Play 2.x.

播放1使用render(),播放2返回一个Result对象,该对象是通过调用ok()方法或许多其他方法创建的。

此时您有2个选项。下载Play 1.2.5(当前稳定版)并使用您找到的示例,或使用Play 2.x文档并搜索Play 2.x示例。