java弹出网页alter_关于dwr消除服务器端出错时弹出alter的解决方案

环境:dwr3+jsp

在开发中,我实在不希望dwr弹出alter,只需要打印错误日志就可以,客户端不需要alert出error或者a server error has occurred. 这样的提示,更不需要alert出堆栈信息,客户根本看不懂,也不需要看。怎么办?

经过分析,engine.js中有dwr的默认错误句柄,defaultErrorHandler,如果用户没有定义errorhandler,就会把defaultErrorHandler赋给errorhandler。那我们就写一个js覆盖errorhandle就可以。

js内容如下:

dwr.engine._errorHandler = function(message, ex) {dwr.engine._debug("Error: " + ex.name + ", " + ex.message, true);};

只有上面一句话,上这个js引入到需要加入的页面中,dwr服务端出了错,只会打印日志,不会alter了。

使用ajax的dwr框架弹出error对话框

在SSH框架中,使用ajax的dwr框架弹出error对话框,容易出现这种情况。这是错误的统一提示,但是这样的提示不够友好,并不知道错误详细情况,可以在dwr.xml的配置文件结点内添加如下代码

1

2

3

4

这一样来可以打印出错误详情,这时通常会弹出"a server error has occured"提示框,一般这种情况是由于javascript在调用java方法时,这时业务逻辑层(biz/service)并非由spring产生,所以这时的业务逻辑层无法被注入数据访问层(通用dao),有两种解决方案:

一:你可以重新new一个spring配置文件对象applicationContext;或是在javascript要的访问的java方法中写上自己的数据访问实现

二:把"bean"改"spring",表明不是自己创建,而是由spring创建

1

2

3

4

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值