0

Spring-Web を動作させることができません。

  1. 私の pom.xml には、spring-web および spring-webmvc への依存関係があります。
  2. 私のweb.xmlには<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  3. applicationContext.xml は Bean の「テスト」を定義します
  4. 私の index.jsp は、RequestContextUtils.getWebApplicationContext(request); を介してコンテキストを取得しようとします。

しかし、代わりに例外が発生します:

java.lang.IllegalStateException: No WebApplicationContext found: not in a DispatcherServlet request?
    at org.springframework.web.servlet.support.RequestContextUtils.getWebApplicationContext(RequestContextUtils.java:83)
    at org.springframework.web.servlet.support.RequestContextUtils.getWebApplicationContext(RequestContextUtils.java:60)
    at org.apache.jsp.index_jsp._jspService(index_jsp.java:65)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    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:127)
    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:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:722)

これは私の完全なweb.xmlです

<?xml version="1.0"?>
<web-app version="3.0">
  <listeners>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listeners>
</web-app>
4

1 に答える 1

0
  1. @Jaiwo99 sais のような spring-mvc を取り除きます。Spring-Web は、Spring-MVC がなくてもうまく機能します。
  2. WebApplicationContextUtils.getWebApplicationContext(application) の代わりに 使用しRequestContextUtils.getWebApplicationContext(request)ます。
于 2013-05-13T10:55:23.963 に答える