Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4236字,纯文字阅读大概需要7分钟。
内容图文
Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php
2. 使用dwr3的异常convert处理不能解除,,,按照盗垒能解除了.... 1
3. 使用js 回回调功能处理...还是不能,子能显示个..javaClassName:"java.lang.Throwable",message:"Error"} 2
5. 当然如果想要只针对某一个function来进行超时/警告/错误处理的话也是可以的 4
6.3. Alert不能显示满的格式异常信息的解决之道::自定义页面显示 5
1. Keyword/subtitle
控件显示错误详细信息的解决方案
控件调试解决方案
团队建设---技术建设---调试方法
2. 使用dwr3的异常convert处理不能解除,,,按照盗垒能解除了....
< convert match="java.lang.Exception" converter="exception">
< param name="include" value="message"/>
</ convert >
<!--下面一定要配置,不然会报如下错误:org.directwebremoting.util.CommonsLoggingOutput error 严重: No converter found for ‘java.lang.StackTraceElement‘ -->
< convert match="java.lang.StackTraceElement" converter="bean"></convert>
自定义的异常能显示了,走十默认的异常不能....
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
3. 使用js 回回调功能处理...还是不能,子能显示个..javaClassName:"java.lang.Throwable",message:"Error"}
// DWREngine.setErrorHandler(ehO9); jei haosyo dwr2d
function errh(errorString, exception) {
// alert(errorString);
// alert( JSON.stringify(exception));
eval(dwrxO9).getErr( function(data){
alert(data);
window.open("<%=path%>/com.attilax/util/dwrerr.jsp");
});
}
dwr.engine.setErrorHandler(errh);
4. 异常转换器
\
我们在服务器端写业务逻辑的时候,通常会利用try{}catch{}捕获异常,但是现在对于前台调用后台的业务逻辑,我们如果在后台发生了一些异常,在前台如何让他显示出来,这里dwr为我们提供了一种转换器(Exception转换器),但是这种转换器如果我们不显示的表现出来,它会默认的给我们提供一个error的异常出来,后台报的异常会在前台以error的方式给我们显示,但是不会吧详细的信息暴露出来,所以我们需要自己配置error的转换器,然后把需要的异常信息给显示出来。举例:
在engine.js中常用的方法有
DWREngine.setErrorHandler(function)对错误的处理
DWREngine.setWarningHandler(function)对警告的处理
DWREngine.setTimeout() 设置超时的时间
DWREngine.setAsync(false);设置DWR为同步调用
DWREngine.setAsync(true);设置DWR为异步调用
运行调用打印Error。就是dwr框架给我们指定的,如果我们后台访问的时候发生异常,前台为我们的提示信息就为Error,相当于这些普遍的异常都会以Error的形式给我们显示。
如果我们现在不想要Error,我们想要知道前台给我们报的错误是针对后台哪一个异常,我们就需要这个异常转换器来给我们指定这种异常的转换,然后把这种异常信息捕获到前台,前台给我们打印出来,这就要用到dwr给我们提供的内置的转换器,在dwr.xml里面配置:
<convert match="com.ryanlu.exception.FunkyException" converter="exception">
<param name="include" value="message"/>
</convert>
只要配置了这种异常处理转换器,后台发生异常,前台就可以给我们打印出来. 运行结果:"异常的详细信息, date=Mon Jan 01 2008 10:00:00 GMT+0100"。这说明通过配置异常处理转换器,在前台可以捕获后台发生的异常,而且是详细的异常信息。
因为Ajax含义中的"A"就是指的 asynchronous(异步),那么每个Demo.Method执行都是在异步
情况下完成的.如果要指定全局的超时设置那么就可以通过DWREngine.setTimeout()来完成
同样的道理,DWREngine.setErrorHandler(function),DWREngine.setWarningHandler(function)
用来设置全局的错误和警告处理
5. 当然如果想要 只针对某一个function 来进行超时/警告/错误处理的话也是可以的
如下:
Demo.method(params, {
callback:function(data) { alert("it worked"); },
errorHandler:function(message) { alert("it broke"); },
timeout:1000
});
注意:callback和errorHandler是engine.js里面的变量。用来处理异常。这样写的好处是,如果正常执行会调用callback函数,如果发生异常会调用exceptionHander函数来处理。注意callback和errorHandler必须按照上面的方式来写,这是engine.js里面规定的。
6. 自定义异常处理系统::
Thinki:::不个异常抓取,放得个session黑头.在使用dwr调用...
6.1. 异常捕获
三,自定义的excator不能使用,,好像dwr的过滤器首先调用了,不个异常吃兰,闪的excator马异常兰...子好到个调用方法南儿加磊个捕获...
6.2. 异常显示
Store ex
@RemoteMethod public void save_map ( Map mp ) {
try {
this . basesvs . save_map ( mp ) ;
} catch ( Exception e ) {
DwrX . getSession () . setAttribute ( "errO9" , core . getTrace ( e )) ;
throw new RuntimeException ( "--oa1c:" + e . getMessage () , e ) ;
}
}
--------show ex
}
// DWREngine.setErrorHandler(ehO9); jei haosyo dwr2d
function errh(errorString, exception) {
// alert(errorString);
// alert( JSON.stringify(exception));
eval(dwrxO9).getErr( function(data){
alert(data);
window.open("<%=path%>/com.attilax/util/dwrerr.jsp");
});
}
dwr.engine.setErrorHandler(errh);
6.3. Alert不能显示满的格式异常信息的解决之道::自定义页面显示
window.open("<%=path%>/com.attilax/util/dwrerr.jsp");
<%= core.txt2html( request.getSession().getAttribute( "errO9" )) %>
6.4. htmlEncode的问题
public static String txt2html ( Object s2 ) {
// attilax 老哇的爪子 2_r_1 o03
String s = StringEscapeUtils . escapeHtml4 ( s2 . toString ()) ;
s = s . toString () . replaceAll ( "\r\n" , "<br>\r\n" ) ;
s = s . toString () . replaceAll ( " " , " " ) ;
s = s . toString () . replaceAll ( "\t" , " " ) ;
return s ;
}
7. 参考
DWR异常处理 - RyanLuX的专栏 - 博客频道 - CSDN.NET.htm
原文:http://blog.csdn.net/attilax/article/details/39825813
内容总结
以上是互联网集市为您收集整理的Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php全部内容,希望文章能够帮你解决Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。