JavaWeb项目异常直接显示到了页面,后台没有报错。 80

Controller方法中生成一个异常:访问这个Controller,后台控制台不是应该抛出异常么?并且页面上也应该提示http500错误。但是,访问之后,居然直接将异常... Controller方法中生成一个异常:

访问这个Controller,后台控制台不是应该抛出异常么?并且页面上也应该提示http 500错误。

但是,访问之后,居然直接将异常信息打印在了页面上,而后台控制台也没有抛出异常。
难道异常被吃了??

请大家帮我分析下这是怎么回事,可能是什么原因引起的?多谢
是否有Filter或者拦截器之类的将异常全部都捕获了,然后直接response输出了异常的message信息??

使用try catch能够捕获异常。我的初衷是使用Spring的SimpleMappingExceptionResolver对异常进行统一的管理,但是程序抛出异常后,并没有想象中的报错,或者Http 500错误。所以,就没有办法统一管理异常,因为配置了也不生效。另外一个项目,在Controller中手动生成了相同的异常。效果如下:

在页面中:

这才是正确的"出错"方式吧。

---------------------------------------------------------------------------------------------------------------

问题已经找到:
同事很早之前写过一个通用的ExceptionResolver,resolveException方法中进行了日志处理,并且将message进行了输出。所以就会导致上面的结果。
处理方法就是在resolveException方法中进行处理,^_^
展开
 我来答
叶子的小情意
2015-01-21 · TA获得超过300个赞
知道小有建树答主
回答量:244
采纳率:0%
帮助的人:141万
展开全部
这是算法异常了,没有正常抛出。是你的那个int b=1/0;引起的。
你可以用
try {
int b=1/0;
} catch (Exception e) {
e.printStackTrace();
}

那你试下这样,System.out.println(b),我没估计错的话,程序会正常抛出错误的。可能是因为这个是属于运行时异常才没有正常捕捉到
白菜一颗
2015-01-21 · TA获得超过8916个赞
知道大有可为答主
回答量:3260
采纳率:69%
帮助的人:3734万
展开全部
你后台本身没有try..catch..去捕获异常,应该也没有设置拦截器之类的,所以就直接往下执行返回到前台页面了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-01-26
展开全部
Java Web 其实就是一个技术的总和,把Web看成一个容器而已

主要使用JavaEE技术来实现.在加上各种中间件(SSH等)

JavaWeb其实做什么都可以,你可以通过JavaWeb制作一个软件,

一个ERP,一个网页,甚至是一个网络游戏都可以。

没有特定的范畴.

在加上Java的可移植性,现在普遍用于 各种ERP,大型交互式网站的开发.

说白了跟JavaSE中的 GUI 原理上是一样的,

只不过JavaSE GUI是以桌面的形式展现的,就好像 普通版QQ

JavaWeb是以网页的形式展现的.就好像网页版QQ
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式