我正在使用JSF 2.2和Servlet 3.1(Java EE7)在eclipse中完成一个项目。我遇到的第一个问题是pom.xml中的错误:
<packaging>war</packaging>
错误:缺少web.xml并设置为true。
我在互联网上进行了研究,并在我的pom.xml中添加了以下几行
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
之后错误消失了,但是在运行项目时遇到错误:
java.lang.NoClassDefFoundError:javax / servlet / jsp / jstl / core / Config
我再次搜索了互联网并将以下行放在pom.xml
中<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
问题解决了,只有在访问时才会出现:
http://localhost:8080/MeuSistema/Login.jsf
(我将映射为jsf为inves xhtml)
他通过jsp更改了jsf,说明了以下内容:
HTTP状态404 - /MeuSistema/Login.jsp
出于好奇,将.jsf更改为.xhtml,看看是否至少打开了 该文件,它返回以下内容:
HTTP状态404 - 在ExternalContext中找不到/Login.xhtml作为资源
我还发现了强制读取web.xml的替代方法
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<webxml>src/main/webapp/WEB-INF/web.xml</webxml>
<warSourceDirectory>src/main/webapp/</warSourceDirectory>
</configuration>
</plugin>
但问题仍然存在。
关注我的pom.xml和web.xml:
好吧,似乎没有读取web.xml。有趣的是 没有任何控制台错误。
有什么不对? 谢谢你的关注。
答案 0 :(得分:4)
已解决 - 刚刚删除了项目中的文件夹 .metada 。项目 .settings 的.classpath
由于