Je n'arrive pas à démarrer mon serveur Tomcat, cela fonctionnait auparavant, mais j'ai fait quelque chose de mal et maintenant, cela me renvoie cette exception:
Caused by: Java.lang.IllegalArgumentException: The main resource set specified [E:\workspace\.metadata\.plugins\org.Eclipse.wst.server.core\tmp1\wtpwebapps\workspace\j2eeapplication\target\j2eeapplication-0.0.1-SNAPSHOT] is not valid
at org.Apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.Java:643)
at org.Apache.catalina.util.LifecycleBase.start(LifecycleBase.Java:150)
... 9 more
Et voici mon web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>J2EE Application Example</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xhtml</param-value>
</context-param>
<context-param>
<param-name>facelets.DEVELOPMENT</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.FACELETS_REFRESH_PERIOD</param-name>
<param-value>1</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>Resources Servlet</servlet-name>
<servlet-class>org.springframework.js.resource.ResourceServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Resources Servlet</servlet-name>
<url-pattern>/resources/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value></param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
<url-pattern>/app/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<filter>
<filter-name>charEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>charEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
J'ai examiné différentes solutions sur les forums, mais rien n'a fonctionné. L'option finale consistera à désinstaller Tomcat et une nouvelle installation, car j'ai lu que cela pourrait fonctionner. Merci pour l'aide à l'avance.
On dirait que vous avez une application Web obsolète référencée sur votre serveur intégré Tomcat (Vous utilisez Tomcat As dans Eclipse right?).
Commencez par vérifier l'application déployée sur votre serveur, puis vérifiez le nom de l'artefact j2eeapplication-0.0.1-SNAPSHOT et sa version. Vous devrez peut-être le supprimer et nettoyer votre répertoire de travail avant de le redéployer et vous devriez être en sécurité.
Une mise à jour maven a fait l'affaire pour moi.
Faites un clic droit sur votre projet maven:
Maintenant, faites un clic droit sur votre serveur:
J'ai eu cette erreur lorsque je démarrais une application conçue pour Tomcat 8 à l'aide de Tomcat 7.