0

我有以下控制器:

public static Result overview() {

    class Earning {
        public int ammount;
        public String description;
    }

    Earning[] earnings = new Earning[5];

    earnings[0].ammount = 5;

    return ok(overview.render(earnings));
}

我没有在数组中创建相应的对象,结果在 Java 中我应该得到:java.lang.NullPointerException

但不是显示此错误 Play 框架崩溃。

任何想法如何不使框架崩溃并首先看到错误?

4

2 回答 2

2

添加:

earnings[0] = new Earning();

前:

earnings[0].ammount = 5;

这样,earnings[0]将持有一个Earning对象,您将能够访问它的ammount字段。

于 2013-08-18T08:48:01.137 回答
0

不要在 overview 方法中声明 Earning 类。它产生了一个可见性问题,因为这个类应该只能在方法体中访问,但是你通过将它传递给视图来“泄漏”它。

于 2013-08-18T10:00:00.910 回答