首页 新闻 搜索 专区 学院

JavaWeb(hibernate)JSP页面如何捕获数据库的异常处理

0
悬赏园豆:20 [已解决问题] 解决于 2016-03-17 08:13

JavaWeb项目:
后台代码:

session.save(templet);//执行
        try {
            session.getTransaction().commit();//提交
        } catch (Throwable e) {
            response.getWriter().write(e.getMessage());
        }

JSP页面:

success:function(result){
if(result==""){
    $.messager.alert("系统提示","保存成功");
    $('#dlg').dialog('close');
    $("#templetgrid").datagrid("reload");                   
}else{
    $.messager.alert("result",result);
    $.messager.alert("系统提示","保存失败");
}

保存操作时,若字段值超过字段最大长度时,console中会打印如下图:

 

而前台只显示如下图:

这个提示不足以提供直观的异常信息。

若把throwable(或Exception)修改为SQLexption,会提示Unreachable catch block for SQLException. This exception is never thrown from the try statement body

现在想把:
SQL Error: 0, SQLState: 22001
SqlExceptionHelper:147 - Data truncation: Data too long for column 'content' at row 1
显示在JSP页面的$message.alert提示中,请问如何实现?

 

不应挽留的主页 不应挽留 | 初学一级 | 园豆:166
提问于:2016-03-15 22:46
< >
分享
最佳答案
0

用getCause().getMessage()得到了我想要的结果

不应挽留 | 初学一级 |园豆:166 | 2016-03-17 08:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册