Jsf index.xhtml 404 Primefaces和Jboss错误
我正在用JBossAS7.1、JSF2.2和Java7构建一个新的Maven应用程序。不管怎样,我都不能让它工作。Jboss运行良好,我可以看到欢迎页面,但是没有办法(我尝试了很多)看到我的Jsf index.xhtml 404 Primefaces和Jboss错误,jsf,primefaces,jboss,jsf-2.2,Jsf,Primefaces,Jboss,Jsf 2.2,我正在用JBossAS7.1、JSF2.2和Java7构建一个新的Maven应用程序。不管怎样,我都不能让它工作。Jboss运行良好,我可以看到欢迎页面,但是没有办法(我尝试了很多)看到我的index.xhtml页面。它一直给我一个404错误 这是我的pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-in
index.xhtml
页面。它一直给我一个404错误
这是我的pom.xml
:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.metalacademy</groupId>
<artifactId>MetalAcademy</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>MetalAcademy</name>
<dependencies>
<!-- https://mvnrepository.com/artifact/com.sun.faces/jsf-api -->
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.2.2</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/com.sun.faces/jsf-impl -->
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-impl</artifactId>
<version>2.2.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
这是我的webapp文件夹中的index.xhtml
:
金属学院
测试页
我做错什么了吗?我想我什么都试过了。。。现在我被卡住了
提前谢谢你 404通常表示找不到页面。这表明应用程序未被部署,或者您引用了错误的名称。您能否使用JBoss管理控制台检查应用程序是否正确部署 我在POM中缺少的是
maven-war插件
,否则您如何创建需要部署的.war
在web.xml文件中,index.xhtml需要
(而不是其他文件)。如果没有它,默认的初始页面是index.html,但在Wildfly中,如果index.html不存在,这会给我一个“禁止”错误,而不是404错误
在index.xhtml中,带有空白模板的ui:composition
给了我一个页面错误。只需删除整个标签即可开始
还有一条评论:JBoss提供了一些快速入门示例,例如
如果这是一个新项目,我绝对建议至少使用Java8、Prefer11和WildFly 21.0.1.Final。也就是说,您试图导航到的URL是什么?您好@JamesR.Perkins,谢谢您的建议。我会尽快做到这一点。很抱歉我迟迟没有回答,但我的工作很忙,只要有可能,我都在做这个私人项目。我会在这个假期试着去做,看看会发生什么。我会让你知道的。再次感谢@Brooksie,我不是在创建.war,只是在服务器上运行它。我尝试了所有的选项,包括只留下“index.xhtml”。我将尝试移除标签,并尽快通知您。正如我在詹姆斯·R·帕金斯的评论中所说的那样,“我的工作很忙,只要有可能,我都会致力于这个私人项目。我会在这个假期尝试去做,看看会发生什么。”。非常感谢您的回答,当然它会很有用:-)最后,我用一个全新的项目重新开始,并使用ApacheTomcat服务器。。。它对我有用。无法使它与Jboss一起工作
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<display-name>MetalAcademy</display-name>
<!--
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
<welcome-file>index.jsf</welcome-file>
<welcome-file>index.xhtml</welcome-file>
</welcome-file-list>
-->
<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>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
</web-app>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html">
<ui:composition template="">
</ui:composition>
<h:head>
<title>METAL ACADEMY</title>
</h:head>
<body>
<h1>Test Page</h1>
<h:commandButton value="Search" />
</body>
</html>