HTTP状态404 - 使用Maven构建JSF

时间:2017-02-21 22:01:30

标签: java maven tomcat jsf http-status-code-404

所以我正在尝试做一个教程,我用mad构建一个来自cmd的项目,然后在eclipse中导入它,用hello world消息创建一个jsf,但当我进入http://localhost:8080/helloworld2/home.jsf时我得到404 not found错误。

这是我的HelloWorld班级

import javax.faces.bean.ManagedBean;
@ManagedBean(name = "helloWorld", eager = true)
public class HelloWorld {
    public HelloWorld() {
        System.out.println("HelloWorld started!");
    }
    public String getMessage() {
        return "Hello World!";
    }
}

这是home.xhtml

   <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <title>JSF Tutorial!</title>
        </head>
        <body>
            #{helloWorld.message}
        </body>
    </html>

我已经部署了.war文件,然后在Tomcat上运行它。我可能没有很好地解释,但任何帮助都非常受欢迎。 谢谢!

1 个答案:

答案 0 :(得分:1)

如果您的home.xhtml已开启 SRC&GT; web应用

并且你的web.xml包含这应该工作

<!-- Welcome page -->
    <welcome-file-list>
        <welcome-file>faces/home.xhtml</welcome-file>
    </welcome-file-list>
        <!-- Map these files with JSF -->
    <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>*.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>