play框架数据修改 - Ebean.update(bean)失败问题解决

/**
      * 保存部门信息
      * @param bean
      * @param id
      * @return
      */
      public JsonResult saveBranchInf (Branch bean , Long id ) {
           
           JsonResult result = new JsonResult();
            try {
                 if ( null == bean ||StringUtils. isBlank ( bean . branchName )) {
                      result . code =ResultEnum. PARAERR .getValue();
                      result . msg =ResultEnum. PARAERR .getDisplay();
                      return result ;
                }
           
                 //bean.parentId =(null==bean.parentId)?CommonState.FALSE.getValue():bean.parentId;
                 logger .info( "zzz" );
                 if ( null == bean . id ) {
                      bean . branchStatus = CommonState. TRUE .getValue();
                      bean . creatorId = id ;
                      bean . createTime = new Date();
                bean .save();
                     
                } else {
                   bean . editorId = id ;
                   bean . editTime = new Date();
//                 bean.update();
                   super.editOne(bean);
                }
           
                 result . code =ResultEnum. SUCCESS .getValue();
                 result . msg =ResultEnum. SUCCESS .getDisplay();
         
           } catch (Exception e ) {
                 e .printStackTrace();
             logger .error( "保存部门信息,异常:" , e );
           }
           
            return result ;
     }

调用方法为通用方法,排除方法错误引起的问题。
解决思路:
1.调整系统日志配置文件级别为debug及以下,查看日志执行信息;日志配置文件调整如下:
logback.xml文件:    
<logger name="play" level="INFO" />
<logger name="application" level="DEBUG" />
<logger name="controller" level="DEBUG" />
<logger name="service" level="DEBUG" />
<logger name="util" level="DEBUG" />

<logger name="com.gargoylesoftware.htmlunit.javascript" level="OFF" />
<logger name="org.hibernate.validator.messageinterpolation.ParameterMessageInterpolator" level="ERROR" />

<root level="DEBUG">
<appender-ref ref="STDOUT" />
</root>
<root level="INFO">
<appender-ref ref="FILE" />

</root>

dev.conf文件(为application.conf文件的子文件):
把所有logSql相关的配置信息修改为:true;(控制台打印sql执行信息)
loglevel = "DEBUG"

2.分析日志,发现Ebean执行过程中没有update传递的参数。判断为系统以前编译生成的文件,系统更新后的文件没有覆盖之前编译的文件,导致执行过程中失败。
此时通过命令 sbt clean 清除系统之前生成的文件,重新编译系统文件。再次执行问题解决。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值