2017-05-26 122 views
0

我試圖使用Maven作爲服務器上的Tomcat運行8。我是這兩個人的新手,所以我有一個我沒有做過的示例文件,並且應該打印出'歡迎'。 不過,我收到此錯誤Tomcat服務器跑進404由於未知原因,

所請求的資源不可用。

我查了我的IDE(Netbeans的)Tomcat log中,我發現它給出了這樣的錯誤:

org.apache.catalina.core.ApplicationContext.log初始化春根WebApplicationContext的 26日-2017 19:22:50.151 INFO [HTTP-NIO-8080-EXEC-76]標記org.apache.catalina.core.ApplicationContext.log servlet的法院爲不可用 26個可能的2017 19:22:50.151嚴重[HTTP- NIO-8080-EXEC-76] org.apache.catalina.core.StandardContext.loadOnStartup的Servlet [法院]在web應用[/ ronak]扔負荷()例外 java.lang.ClassNo tFoundException:org.springframework.web.servlet.DispatcherServlet 在org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333) 在org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java: 1167) at org.apache.catalina org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:490) org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:509) 。 core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1091) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java: 1027) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5038) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5348) at org.apache.catalina.util。 LifecycleBase.start(LifecycleBase.java:145) 在org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753) 在org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:729) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:587) at org.apache.catalina.startup。 HostConfig.deployApps(HostConfig.java:461) 在org.apache.catalina.startup.HostConfig.check(HostConfig.java:1612) 在sun.reflect.GeneratedMethodAccessor46.invoke(來源不明) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:497) 的組織。 apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) at com.sun.jmx.mbeanserver.JmxMBeanServer。調用(JmxMBeanServer.java:801) at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1451) at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:897) at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:335) at jav ax.servlet.http.HttpServlet.service(HttpServlet.java:622) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain。 java:292) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain。的java:207) 在org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) 在有機apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) 在org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( ApplicationFilterChain.java:240) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) 在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) 的組織。 apache.catalina.core.StandardContextValve.invoke(StandardContextVa lve.java:94) 在org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:616) 在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) 在有機apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620) at org.apache.catalina.core.StandardEngineValve.invoke( (org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:502) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1132) at org。 apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:684) at org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1489) at org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1533) at org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1489) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617) 在org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61) 在java.lang.Thread.run(Thread.java:745)

我的問題是,該行我做了大膽的說,我沒有這個repository:org.springframework.web.servlet.DispatcherServlet在我的項目中。但是,我確定它可以在我的依賴中看到。文件spring-webmvc.4.3.8.Release.jar在預期的文件夾(WEB-INF/lib)中可見,並且它包含一個名爲DispatcherServlet.class的類文件這在我的項目窗口中可以在netbeans中訪問。

我還檢查到POM文件,我有這些那些聲明該文件和其他兩個彈簧網絡的jar文件 - 作爲依賴:

<dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>4.3.8.RELEASE</version> 
      <type>jar</type> 
     </dependency> 
     <dependency> 
      <groupId>javax</groupId> 
      <artifactId>javaee-web-api</artifactId> 
      <version>7.0</version> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
      <!-- Set this to the respective version --> 
      <version>4.3.8.RELEASE</version> 
      <scope>provided</scope> 
      <type>jar</type> 
     </dependency> 

那麼,有什麼我做錯了什麼?因爲TomCat沒有提供任何進一步的信息來確切地說明找不到的東西,所以我看到的唯一問題就是這個。

在此先感謝:)

+0

你有提供的範圍在春季mvc依賴 –

+0

我已檢查所有可能的替代,但沒有發生變化。 –

回答

0

您可以檢查是否有你的人工製品(戰爭)中的庫。如果pom.xml配置不正確,某些庫可能不存在。

+0

對不起,我沒有明白你的意思。如果你的意思是檢查myproject.war文件,它的內容是不可讀的。你能解釋更多嗎?謝謝! –

+0

你可以用winrar打開myproject.war(它只是歸檔)並找到\ WEB-INF \ lib文件夾。你的庫必須在那裏。 – nikelyn

+0

謝謝。我可以看到spring-web,但那裏沒有spring-webmvc。那麼我應該如何改變我的POM.xml? –