异常e.getMessage()有时候为null

            今天业务部门反应上周录的一个询价单的报价,今天看有好几条厂家的报价都不见了。排除数据库丢失数据这种完全不可能的情况,怀疑是系统代码的bug。

            其实也一直觉得本身的实现方式容易出现实际提交失败,但页面显示是操作成功。因为我用ajax方法实现提交报价,根据Action类里返回的String message变量来判断录入成功或失败。message为null或空值时表示提交成功,否则失败。若成功,则把报价信息添加进jqGrid表。Action方法代码如下:

             try {
                 System.out.println("开始新增报价………………");
                 quotationService.addQuotation(quotation); // 新增报价
                 System.out.println("新增报价成功");
             } catch (Exception e) {
                  System.out.println(e.getMessage());
                  message = e.getMessage();
             }

Ajax代码:

      var param = $("#form3").serialize();
      $.ajax({
     url:"addOrModifyQuotation.action",
     type:"post",
     data:param,
     dataType:"json",
     success:function(data){
        if(data.message==null||data.message==""){    
           var rowdata = {
                 QUOTATION_PN: $.trim($("#quotation_pn").val()),
                 PN_STATE: $.trim($("#pn_state").val()),
                       DELIVERY_QTY: $.trim($("#delivery_qty").val()),               
                       MIN_DELQTY: $.trim($("#min_delqty").val()),       
                       QTY_UNIT: $.trim($("#qty_unit").val()),
                       PRICE:    $.trim($("#price").val()),
                       CURRENCY: $.trim($("#currency").val()),
                       DELIVERY_DAY:  $.trim($("#delivery_day").val()),
                       QUOTATION_EXPDATE:  $.trim($("#quotation_expdate").val()),
                       CERTIFY: data.quotation.certify,
                       QUO_NOTE: $.trim($("#quo_note").val()),            
                       QUO_VALID: $.trim( $("#quo_valid").find("option:selected").text() )

              }
              var id = $("#gridTable").jqGrid('getGridParam','selrow');
              $("#gridTable").setRowData(id,rowdata);

              alert("提交成功!");
     }
      else{
           alert("提交失败: " + data.message);    
    
      }
     }
      });

            之前也碰到过多次,发生异常,但输出信息e.getMessage()居然为null,导致判断不准确。还是改为message = e.toString();比较准确。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值