“javax.servlet.ServletException: 非 HTTP 请求或响应";在 JBoss 中 [英] "javax.servlet.ServletException: non-HTTP request or response" in JBoss

查看:21
本文介绍了“javax.servlet.ServletException: 非 HTTP 请求或响应";在 JBoss 中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的 jboss 在尝试运行我的应用程序 (spring mvc) 时抛出了无法描述的错误.它部署正常,这个异常并没有告诉我任何有用的信息,所以我真的不知道该怎么做.我无法调试,真的什么也做不了:

<前>13:00:01,262 INFO [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221053)] 开始于 2m:13s:790ms**启动成功**

从浏览器运行应用程序时会发生这种情况:

13:00:09,456 ERROR [[appServlet]] Servlet.service() for servlet appServlet 抛出异常javax.servlet.ServletException: 非 HTTP 请求或响应在 javax.servlet.http.HttpServlet.service(HttpServlet.java:818)在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)在 org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)在 org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)在 org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)在 org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)在 org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)在 org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)在 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)在 org.apache.tomcat.util.net.JioEndpoint$Worker.run(JioEndpoint.java:447)在 java.lang.Thread.run(Thread.java:619)

解决方案

当无法将参数转换为 HttpServletRequestHttpServlet.service(ServletRequest, ServletResponse) 时,会抛出此问题/code> 和 HttpServletResponse 分别.

这意味着两件事之一:

  • 参数类型错误(不太可能)或
  • 某些过滤器使用了这些类型的错误副本,加载了错误的类加载器(例如,如果您使用 web 应用程序提供自己的 servlet-api-xxjar 副本).

My jboss is throwing undescriptive error while trying to run my application (spring mvc). It deploys ok, and this exception doesn't tell me anything useful so I don't really know what to do. I can't debug , can't do anything really :

    13:00:01,262 INFO  [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221053)] Started in 2m:13s:790ms

**Started successfully**

While running the application from the browser this happens :

13:00:09,456 ERROR [[appServlet]] Servlet.service() for servlet appServlet threw exception
javax.servlet.ServletException: non-HTTP request or response
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:818)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    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:235)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
    at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
    at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
    at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Thread.java:619)

解决方案

This gets thrown in HttpServlet.service(ServletRequest, ServletResponse) when the parameters can't be cast to HttpServletRequest and HttpServletResponse respectively.

That means one of two things:

  • the parameters are of the wrong type (unlikely) or
  • some filter is using the wrong copy of those types, loaded with a wrong classloader (for example if you deliver your own copy of servlet-api-x.x.jar with your webapp).

这篇关于“javax.servlet.ServletException: 非 HTTP 请求或响应";在 JBoss 中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆