我有一个想要生成他的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

10-04 18:11