环境dwr2.0 原因是据说dwr2.0的异常处理支持比1.0好很多
定义异常处理函数:
function errorHandler(errorString, exception){
alert(exception.message);
}
function exceptionHandler(exceptionString, exception){
alert(exception.message);
}
设置通用的异常处理函数:
dwr.engine.setExceptionHandler(exceptionHandler)
dwr.engine.setErrorHandler(errorHandler);
在dwr.xml中配置异常类转换器:
<convert converter="exception" match="com.jeyo.monica.service.OrderServiceException">
<param name='include' value='message,lineNumber'/>
</convert>
<convert converter="exception" match="java.lang.Exception">
<param name='include' value='message,lineNumber'/>
</convert>
业务处理过程中一定需要将对应的异常转换为上面定义的异常才可以被dwr捕捉的
如下:
try{
}catch(Exception e){
throw new OrderServiceException(e);
}
.....
自定义的异常处理
调用dwr远程调用时多带若干参数:
如下格式:
OrderService.create(order,
{
callback:finishSaveOrderTicket,
errorHandler:errorHandler,
exceptionHandler:exceptionHandler
}
);
ok,上面的处理完成后,发生异常时就会把你的异常中的message 使用alert函数打印出来