Admin线上报出Bug:There is no getter for property named

2018-08-01

admin线上提报异常一个,在新建特征生成器的时候,报出如下异常:

线下检查异常代码部分:

相关代码部分:

特征生成器的类

public class WmFeatureProcessor {
	private long id;
	private int processorType;
	private String parentId;
	private String processorContent;
	private long window; //刷新世界间隔毫秒/ms
	private int valid;
	private long ctime;
	private long utime;
	private String pythonScript;
}

新增特征生成器的接口实现部分代码

WmFeatureProcessor wmFeatureProcessor=new WmFeatureProcessor(0,processorType,null,processorContent,processorWindow,1,0,0,pythonScript);
wmFeatureProcessorDao.addProcessor(wmFeatureProcessor);

新增特征生成器的DAO层接口

String SELECTED_FIELDS = "id, processor_type as processorType, parent_id as parentId, processor_content as processorContent,window,valid,ctime,utime,python_script as pythonScript";
@Insert("INSERT INTO " + TABLE + INSERT_FIELDS + " VALUES(#{processorType},#{processorContent},#{processorWindow},0,UNIX_TIMESTAMP(),0,#{pythonScript})")
void addProcessor(WmFeatureProcessor wmFeatureProcessor);
sqlRet = wmFeatureService.addProcessor(processorType, processorContent, pythonScript, processorWindow);
//接口调用代码

异常为WmFeatureProcessor类中取不到processorWindow属性;

 

这里面,我以为类的属性值和DAO层中的SELECTED_FIELD中的对应属性值保持一致,应该是没有问题的。所以一直没有找到问题的所在。

仔细看DAO层中的addProcessor接口,形参为WmFeatureProcessor,这个类的属性中是没有processorWindow属性的,但是我在DAO注解@Insert(...)的里面,使用的参数名却是processorWindow。注解中的参数名应该和WmFeatureProcessor中的属性值保持一致,或者直接用实际值代替。

解决方法,直接将@Insert()中的参数名processorWindow改成window。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值