jsp - JSF中的简单程序抛出404错误

标签 jsp jsf tomcat richfaces

我是jsf rich face编程的新手。正在创建一个名为“ Greeter”的简单程序。我已包含所有与RichFaces相关的jar文件
richfaces-api-3.1.4.GA.jar
richfaces-impl-3.1.4.GA.jar
richfaces-ui-3.1.4.GA.jar
jhighlight-1.0.jar
commons-logging.jar
commons-beanutils.jar
commons-collections.jar
commons-digester.jar

web.xml文件是

<?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" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

  <!-- Plugging the "Blue Sky" skin into the project -->

<context-param>

   <param-name>org.richfaces.SKIN</param-name>

   <param-value>blueSky</param-value>

</context-param>



<!-- Making the RichFaces skin spread to standard HTML controls -->

<context-param>

      <param-name>org.richfaces.CONTROL_SKINNING</param-name>

      <param-value>enable</param-value>

</context-param>



<!-- Defining and mapping the RichFaces filter -->

<filter> 

   <display-name>RichFaces Filter</display-name> 

   <filter-name>richfaces</filter-name> 

   <filter-class>org.ajax4jsf.Filter</filter-class> 

</filter> 



<filter-mapping> 

   <filter-name>richfaces</filter-name> 

   <servlet-name>Faces Servlet</servlet-name>

   <dispatcher>REQUEST</dispatcher>

   <dispatcher>FORWARD</dispatcher>

   <dispatcher>INCLUDE</dispatcher>

</filter-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>*.faces</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>


faces-config.xml是

<?xml version='1.0' encoding='UTF-8'?>

<faces-config 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-facesconfig_1_2.xsd"
    version="1.2">
    <managed-bean>

      <description>UsernName Bean</description>

      <managed-bean-name>user</managed-bean-name>

      <managed-bean-class>demo.user</managed-bean-class>

      <managed-bean-scope>request</managed-bean-scope>

      <managed-property>

         <property-name>name</property-name>

         <property-class>java.lang.String</property-class>

         <value/>

      </managed-property>

   </managed-bean>


</faces-config>


index.jsp文件是

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>

<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>

<!-- RichFaces tag library declaration -->

<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>

<%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>



<html>

      <head>

            <title>RichFaces Greeter</title>

      </head>

      <body>

            <f:view>

                  <a4j:form>

                        <rich:panel header="RichFaces Greeter" style="width: 315px">

                              <h:outputText value="Your name: " />

                              <h:inputText value="#{user.name}" >

                                    <f:validateLength minimum="1" maximum="30" />

                              </h:inputText>



                              <a4j:commandButton value="Get greeting" reRender="greeting" />



                              <h:panelGroup id="greeting" >

                                    <h:outputText value="Hello, " rendered="#{not empty user.name}" />

                                    <h:outputText value="#{user.name}" />

                                    <h:outputText value="!" rendered="#{not empty user.name}" />

                              </h:panelGroup>

                        </rich:panel>

                  </a4j:form>

            </f:view>

      </body>

</html>


和user.java文件是

package demo;

public class user {

    private String name="";

       public String getName() {

          return name;

       }

       public void setName(String name) {

          this.name = name;

       }
}


并且浏览器上的错误消息是

HTTP状态404-/Gree/index.jsp



类型状态报告

消息/Greeter/index.jsp

说明所请求的资源(/Greeter/index.jsp)不可用。

日志文件消息为

2011年4月10日,上午12:05:05 org.apache.coyote.http11.Http11Protocol初始化
INFO:在端口8080上初始化Coyote HTTP / 1.1
2011年4月10日上午12:05:05 org.apache.catalina.startup.Catalina负载
INFO:初始化在1000毫秒内完成
2011年4月10日12:05:05 org.apache.catalina.core.StandardService开始
INFO:启动服务Catalina
2011年4月10日,上午12:05:05 org.apache.catalina.core.StandardEngine启动
信息:启动Servlet引擎:Apache Tomcat / 5.0.16
2011年4月10日,上午12:05:05 org.apache.catalina.core.StandardHost开始
INFO:禁用XML验证
2011年4月10日,上午12:05:05 org.apache.catalina.core.StandardHost getDeployer
INFO:创建用于直接部署的主机部署程序(非jmx)
2011年4月10日,上午12:05:05 org.apache.catalina.core.StandardHostDeployer安装
INFO:处理上下文配置文件URL文件:G:\ Tomcat5.0 \ conf \ Catalina \ localhost \ admin.xml
2011年4月10日,12:05:06 org.apache.struts.util.PropertyMessageResources
信息:初始化,config ='org.apache.struts.util.LocalStrings',returnNull = true
2011年4月10日,12:05:06 org.apache.struts.util.PropertyMessageResources
信息:正在初始化,config ='org.apache.struts.action.ActionResources',returnNull = true
2011年4月10日,上午12:05:07 org.apache.struts.util.PropertyMessageResources
信息:正在初始化,config ='org.apache.webapp.admin.ApplicationResources',returnNull = true
2011年4月10日,上午12:05:09 org.apache.catalina.core.StandardHostDeployer安装
INFO:处理上下文配置文件URL文件:G:\ Tomcat5.0 \ conf \ Catalina \ localhost \ balancer.xml
2011年4月10日,上午12:05:09 org.apache.catalina.core.StandardHostDeployer安装
INFO:处理上下文配置文件URL文件:G:\ Tomcat5.0 \ conf \ Catalina \ localhost \ manager.xml
2011年4月10日,上午12:05:09 org.apache.catalina.core.StandardHostDeployer安装
INFO:在URL文件:G:\ Tomcat5.0 \ webapps \ Gree的上下文路径/ Gree上安装Web应用程序
2011年4月10日上午12:05:10 org.apache.catalina.core.StandardContext开始
严重:error filterStart
2011年4月10日上午12:05:10 org.apache.catalina.core.StandardContext开始
严重:由于先前的错误,上下文启动失败
2011年4月10日,上午12:05:10 org.apache.catalina.core.StandardHostDeployer安装
INFO:在URL文件:G:\ Tomcat5.0 \ webapps \ jsp-examples的上下文路径/ jsp-examples中安装Web应用程序
2011年4月10日,上午12:05:10 org.apache.catalina.core.StandardHostDeployer安装
INFO:在URL文件的上下文路径中安装Web应用程序:G:\ Tomcat5.0 \ webapps \ ROOT
2011年4月10日,上午12:05:10 org.apache.catalina.core.StandardHostDeployer安装
INFO:在URL文件:G:\ Tomcat5.0 \ webapps \ servlets-examples的上下文路径/ servlets-examples上安装Web应用程序
2011年4月10日,上午12:05:10 org.apache.catalina.core.StandardHostDeployer安装
INFO:在URL文件:G:\ Tomcat5.0 \ webapps \ tomcat-docs的上下文路径/ tomcat-docs上安装Web应用程序
2011年4月10日,上午12:05:10 org.apache.coyote.http11.Http11Protocol开始
INFO:在端口8080上启动Coyote HTTP / 1.1
2011年4月10日,12:05:11 org.apache.jk.common.ChannelSocket初始化
INFO:JK2:ajp13在/0.0.0.0:8009上监听
2011年4月10日,上午12:05:11 org.apache.jk.server.JkMain开始
INFO:Jk运行ID = 0时间= 0/47 config = G:\ Tomcat5.0 \ conf \ jk2.properties
2011年4月10日12:05:11 org.apache.catalina.startup.Catalina开始
INFO:服务器在5797毫秒内启动

请帮助我摆脱这个错误。我已经尝试了很多,但是错误消息来了。谢谢。

最佳答案

检查您在web.xml中编写的代码,

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.faces</url-pattern>
  </servlet-mapping>


因此,您可以通过index.faces而不是index.jsp访问页面

关于jsp - JSF中的简单程序抛出404错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5607185/

相关文章:

java - Liferay : how can i upload a image from portlet preferences?

java - 如何发现Bean的变化

jsf - PrimeFaces 是否有类似 o :param (solution to add complex parameter for outputFormat)? 的内容

java - Tomcat - 监听两个端口以进行测试

jsp - 将 BufferedImage 转换为 img 的问题

java - 如何减少 WAR 文件大小以部署在 Tomcat 服务器主机上?

tomcat - Tomcat 重定向的 iptables 输出链规则

java - org.glassfish.jersey.server.internal.process.MappableException : org. apache.catalina.connector.ClientAbortException : java.net.SocketException:

java - 我们如何在 Struts 中追加 2 个字符串

JSF:HTTP GET 参数数组