我有一个想要生成他的AutoBean的类。
Example.class:
public static class Example implements Serializable {
public Example2 example2 = new Example2();
public static BigDecimal calc(BigDecimal dec){
return dec != null ? dec: BigDecimal.ZERO;
}
public static class Example2 implements Serializable {
public BigDecimal value1 = BigDecimal.ZERO;
public BigDecimal value2 = BigDecimal.ZERO;
public BigDecimal getSum(){
return calc(value1).add(calc(value2));
}
}
}
AutoBean示例:
public inteface Example {
@PropertyName("example2")
public Example2 getExample2();
BigDecimal calc(BigDecimal dec);
}
我尝试这样做
AutoBean Example2:
public interface Example2 {
@PropertyName("value1")
public BigDecimal getValue1();
@PropertyName("value2")
public BigDecimal getValue2();
BigDecimal getSum();
}
还有Example2Category,其中函数是实现的。
但是当我尝试获取value1或value2时,出现错误:
TypeError:无法读取null属性
我认为发生这种情况是因为没有初始化的值,如其类表示形式。我尝试了这个solution,但似乎没有用。
那么,如何用初始化值表示我的Example2类中的AutoBean?
最佳答案
看来这是一个BigDecimal问题。对我来说,我将服务器值更改为Double,并且现在可以正常使用。
参见此Post。