如何去掉后台错误信息(在地址栏上输入在action类中没有方法名)

romanitc 2011-10-24 03:53:02
我是用s2sh,我想解决的问题是:去掉后台的报错信息,信息如下:


2011-10-24 15:41:50,149 [org.apache.struts2.dispatcher.Dispatcher]-[WARN] Could not find action or result
There is no Action mapped for namespace / and action name abcabc. - [unknown location]
at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:178)
at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:47)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:478)
at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176)
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145)
at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:381)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
at java.lang.Thread.run(Thread.java:619)



我的struts.xml里面的都是用通配符对应方法的,例如:如下

<!-- 用户登录 -->
<package name="login" extends="baseAction" namespace="/">
<action name="login_*" class="loginAction" method="{1}">
<result name="userLoginSuccess">/res/templet/user/templet/new/index.jsp</result>
<result name="userLoginFail">/res/templet/user/templet/new/login.jsp</result>
<result name="userLoginExitSuccess">/res/templet/user/templet/new/login.jsp</result>
</action>
</package>


我的web.xml是:如下


<error-page>
<error-code>404</error-code>
<location>/res/templet/new/404Error.jsp</location>
</error-page>

<!-- struts2配置 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>

<!--<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
-->
</filter>


我已经在web.xml里配置了404错误,会跳预先定好的页面,如果我在地址拦上输入http://local.XXX.com/abcabc(local.XXX.com是在tomcat里虚拟的路径)就报找不到对应的action,会报404,页面是跳到了我自定义的jsp页面,但后台还是报错打不到对应的action!怎样才能把后台的报错信息去掉或不会报错,郁闷中,在线等!!
...全文
191 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
楼主我也遇见这个问题了 把你的解决方法贴出来 让我学习一下 好吗?
romanitc 2011-10-25
  • 打赏
  • 举报
回复
谢谢![Quote=引用 14 楼 nizhicheng 的回复:]

你还没解决的啊
Java code

package interceptor;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
public class MyInterceptor implements Interceptor {……
[/Quote]
nizhicheng 2011-10-25
  • 打赏
  • 举报
回复
你还没解决的啊

package interceptor;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
public class MyInterceptor implements Interceptor {
public void destroy() {
// TODO Auto-generated method stub
}public void init() {
// TODO Auto-generated method stub
}
public String intercept(ActionInvocation invocation) throws Exception {
System.out.println("Action执行前插入 代码");
//执行目标方法 (调用下一个拦截器, 或执行Action) 捕获这块异常,输入自定义信息
final String res = invocation.invoke();
System.out.println("Action执行后插入 代码");
return res;
}
}


Struts2拦截器需要在struts.xml中声明
尝试下吧~~差不多应该就这样了
romanitc 2011-10-25
  • 打赏
  • 举报
回复
自己顶一下,大牛们呢??
romanitc 2011-10-24
  • 打赏
  • 举报
回复
可以提示一下这个异常类如何写吗?我是用struts2的[Quote=引用 11 楼 nizhicheng 的回复:]

当然肯定是有类去处理你输入的任何东西 要不然他怎么给你分配对应的ACTION 这个肯定是又基类的支持
别的不说了, STRUTS1 拦截器 这里有文章供你分享下
http://jayje.iteye.com/blog/562128
如果是STRUS2 很方便就不说了
[/Quote]
nizhicheng 2011-10-24
  • 打赏
  • 举报
回复
当然肯定是有类去处理你输入的任何东西 要不然他怎么给你分配对应的ACTION 这个肯定是又基类的支持
别的不说了, STRUTS1 拦截器 这里有文章供你分享下
http://jayje.iteye.com/blog/562128
如果是STRUS2 很方便就不说了
romanitc 2011-10-24
  • 打赏
  • 举报
回复
请问这个异常类如何写?拦截There is no Action mapped for namespace / and action name.....这个错误码[Quote=引用 9 楼 nizhicheng 的回复:]

try catch 这个还不够吗?
[/Quote]
nizhicheng 2011-10-24
  • 打赏
  • 举报
回复
try catch 这个还不够吗?
romanitc 2011-10-24
  • 打赏
  • 举报
回复
拦截器类里写什么条件,做判断![Quote=引用 7 楼 nizhicheng 的回复:]

不知道 楼上那几个兄弟的提议对你有帮助没~
要是我自己的话 我会去写拦截器~~~然后自己抓异常去处理
[/Quote]
nizhicheng 2011-10-24
  • 打赏
  • 举报
回复
不知道 楼上那几个兄弟的提议对你有帮助没~
要是我自己的话 我会去写拦截器~~~然后自己抓异常去处理
romanitc 2011-10-24
  • 打赏
  • 举报
回复
请问大家有什么方法能达到我上面所说的要求???郁闷郁闷郁闷郁闷中....
Strive_MrL 2011-10-24
  • 打赏
  • 举报
回复
交给默认的...
Strive_MrL 2011-10-24
  • 打赏
  • 举报
回复
struts2有一个默认的action拦截所有未定义action的用户请求,用户输入信息错误全部要给默认的action处理!
number00fa 2011-10-24
  • 打赏
  • 举报
回复
回信息有积分么?
romanitc 2011-10-24
  • 打赏
  • 举报
回复
但后台的日志catalina.out文件里一堆堆这样的错误信息,公司要求就是要把它去掉,因为我们的项目是商城,已在网上运营,客户输入什么地址我们都估计不了![Quote=引用 1 楼 nizhicheng 的回复:]

后台记录错误的日志~~你为啥要去掉呢??
[/Quote]
nizhicheng 2011-10-24
  • 打赏
  • 举报
回复
后台记录错误的日志~~你为啥要去掉呢??

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧