java.lang.ClassNotFoundException: org.springframework.www.servlet.DispatcherServlet
Używam spring 3.1.0.RELEASE , a mój kontener servlet to tomcat 7 , a mój IDE to eclipse indigo a jar wiosna-webmvc-3.1.0.Uwolnij.jar który zawiera DispatcherServlet istnieje w folderze lib, a jednak podczas uruchamiania aplikacji dostaję wyjątek:
java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:525)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:507)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:126)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1099)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1043)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4957)
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5284)
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5279)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Proszę o poradę, dlaczego otrzymuję ten wyjątek i jak go naprawić.
EDIT: poniżej znajdują się moje pliki konfiguracyjne:
1- .springBeans:
<?xml version="1.0" encoding="UTF-8"?>
<beansProjectDescription>
<version>1</version>
<pluginVersion><![CDATA[2.9.0.201203011806-RELEASE]]></pluginVersion>
<configSuffixes>
<configSuffix><![CDATA[xml]]></configSuffix>
</configSuffixes>
<enableImports><![CDATA[false]]></enableImports>
<configs>
<config>src/main/webapp/WEB-INF/checkout-servlet.xml</config>
</configs>
<configSets>
</configSets>
</beansProjectDescription>
2- www.xml:
<web-app>
<display-name>Checkout</display-name>
<servlet>
<servlet-name>checkout</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>checkout</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
</web-app>
3- checkout-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">
<context:component-scan base-package="com.myapp"/>
<bean id="myService" class="com.myapp.MyService"/>
</beans>
Również podczas próby uzyskania dostępu do dowolnej strony w aplikacji, dostaję wyjątek:
HTTP Status 404 - Servlet checkout is not available
type Status report
message Servlet checkout is not available
description The requested resource (Servlet checkout is not available) is not available.
Apache Tomcat/7.0.22
15 answers
Musisz dodać "Maven Dependency" w Deployment Assembly
- Kliknij prawym przyciskiem myszy na projekcie i wybierz Właściwości.
- Kliknij Deployment Assembly.
- Kliknij Dodaj
- Kliknij na "Java Build Path Entries"
- select Maven Dependencies "
- kliknij Zakończ.
Rebuild and deploy again
Uwaga: dotyczy to również projektu non maven.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-12 05:07:43
Dwie możliwe odpowiedzi:
1 - nie uwzględniłeś wiosennych fasolek i wiosennych słoików kontekstowych w swojej lib. Jeśli używasz Mavena (co bardzo pomoże) te dwie linie wystarczą
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.1.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.1.0.RELEASE</version>
</dependency>
2 - niezbędne słoiki są w twojej ścieżce klasowej, ale nie są rozmieszczone na tomcacie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-31 20:40:13
Cześć chłopaki miałem ten sam problem z Idea Intellij i Spring 4 naprawiłem problem i chciałem podzielić się z wami odpowiedzią.
Używam tomcat 7 / idea intellij 13 / spring 4
Pom.zależności xml
<properties>
<spring.version>4.0.5.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
enter code here
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.2</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
</dependencies>
W idea Intellij musisz przejść do File - > Project Settings - > artefakty. Wtedy
Clean - > rebuild the project - > build the artefact and everything will be ok ...
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-06 17:53:35
Znalazłem, że w zbiorze był wpis:
[persisted container] org.maven.ide.eclipse.maven2_classpath_container
Usunąłem go i dodałem wpis maven dependencies
i teraz działa dobrze.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-28 08:54:54
Miałem do czynienia z tym samym problemem. Kiedy zobaczyłem w repozytorium maven .folder m2(....m2 \ repository \ org \ springframework\spring-webmvc) w moim lokalnym znalazłem dwa 3.2.0.Zwolnij foldery. Więc usunąłem jedną. Następnie poszedłem do projektu, kliknij prawym przyciskiem myszy- > Właściwości-> deployment essembly - > dodaj zależności Mavena. Wyczyść kompilację, a następnie uruchom ponownie serwer. Następnie Dyspozytornia została załadowana.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-29 13:42:49
Jeśli wszystkie te porady nie działają, powinieneś ponownie utworzyć serwer (Tomcat lub coś podobnego). To rozwiązało mój problem.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-09 03:26:19
W moim przypadku mam ten problem po użyciu narzędzia update Project Mavena. Próbowałem wszystkich obejść, które zasugerowałeś, ale nic nie działało. Na koniec rozwiązaniem było po prostu usunięcie projektu z serwera, aby upewnić się, że jest czysty, i dodać go ponownie. Wtedy to działa, Mam nadzieję, że to rozwiązanie może pomóc każdemu z was.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-11-02 09:46:35
Możesz użyć serwera GlassFish i błąd zostanie rozwiązany. Próbowałem z tomcat7 i tomcat8, ale ten błąd pojawiał się w sposób ciągły, ale rozwiązany z GlassFish. Myślę, że to problem z serwerem.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-12 16:11:16
Załącz poniższą zależność w swoim pom.xml
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>{spring-version}</version>
</dependency>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-24 19:36:30
To rozwiązuje problem dla mnie. Jest to łatwe i dość prosto wyjaśnione.
Krok 1
- Kliknij prawym przyciskiem myszy projekt
- Kliknij na właściwości
Krok 2
- Kliknij zakładkę Deployment Assembly w zakładce
- Kliknij Dodaj...
Krok 3
- Kliknij na wpisy Java Build Path
Krok 4
- Kliknij na Maven Dependencies
- Kliknij przycisk Zakończ
Krok 5
- Przesuń Wiosnę Aplikacja MVC do Tomcat again
- Restart Tomcat
- pozycja listy
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-03 11:22:27
Kliknij prawym przyciskiem myszy na projekcie i wybierz Właściwości. kliknij na Deployement Assembly. kliknij Dodaj kliknij na " Java Build Path Entries" wybierz zależności Maven" kliknij przycisk Zakończ.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-12 19:05:23
Rozwiązałem wykonując następujące kroki:
- Kliknij prawym przyciskiem myszy w projekcie > Configure > Convert to Maven project
- po konwersji kliknij prawym przyciskiem myszy w project > Maven > Update project
To naprawia ustawienia "Deployment Assembly" projektu.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-08-31 15:19:51
Przenieś pliki jar ze ścieżki classpath do web-inf / lib i uruchom nowy serwer tomcat.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-24 17:56:29
Znalazłem proste rozwiązanie, Po prostu dodaj swoje słoiki do folderu WEB-INF-- > lib..
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-01 04:37:01
Miałem ten sam problem w WebSphere, ale nie mogłem znaleźć rozwiązania, mimo że zweryfikowałem zależności sprężyny i działał w tomcat po prostu dobrze. Skończyło się na odinstalowaniu aplikacji i nadal otrzymywał błąd, więc myślę, że WebSphere wisiał na jakiejś uszkodzonej instancji.
Aby rozwiązać problem, musiałem ponownie zainstalować aplikację, zatrzymać ją, odinstalować, a następnie ponownie zainstalować.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-23 19:20:45