JSF 在我的 tomcat Web 服务器中无法访问

问题描述 投票:0回答:1
jsf http-status-code-404
1个回答
0
投票

faces-servlet 的 url 模式应该是简单的 *.xhtml,以便 JSF 处理任何路径上的所有 xhtml 文件,然后 url 应该是 http://localhost:8080/amazonlite/cart.xhtml 才能正常工作。

要对部署环境中使用的正确 URL 进行逆向工程:Web 应用程序的名称(本例中为“amazonlite”)默认是 URL 的一部分,Tomcat 侦听 HTTP 流量的默认端口是 8080。

Web 应用程序的名称默认为战争名称,不带 .war 扩展名。因此 amazonlite.war 变为 amazonlite

供参考,问题中更改后的 web.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
     version="4.0">
  <context-param>
      <param-name>javax.faces.PROJECT_STAGE</param-name>
      <param-value>Development</param-value>
  </context-param>
  <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>*.xhtml</url-pattern>
  </servlet-mapping>
</web-app>
© www.soinside.com 2019 - 2024. All rights reserved.