jsf - 在 JSF 中使用自定义 URL 扩展

标签 jsf tomcat servlets

<分区>

我想为我的 facelets 使用自定义 URL 扩展。例如,.asdf 而不是 .xhtml.jsf

我将映射添加到我的 web.xml:

<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>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.asdf</url-pattern>
</servlet-mapping>

index.asdf 位于 WebContent/facelets/common/index.asdf 但如果我尝试使用浏览器访问它 (http://localhost:8080/Project/facelets/common/index.asdf) 我收到以下错误消息:

HTTP Status 404 - /Project/facelets/common/index.jsp

type Status report

message /Project/facelets/common/index.jsp

description The requested resource is not available.

Apache Tomcat/7.0.39

请注意,即使我没有在任何地方使用过 .jsp 扩展名,它也会显示 .jsp。有什么问题吗?

最佳答案

好吧,看来我误解了这里的一些基础知识。我将磁盘上的文件重命名为 index.asdf,这是我不应该拥有的。他们应该保留 .xhtml 扩展名,只有我访问它们时使用的扩展名是新的。现在一切都按预期工作。如果您想限制对这些原始 .xhtml 文件的访问,请使用此 https://stackoverflow.com/a/5675913/989919

关于jsf - 在 JSF 中使用自定义 URL 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19814916/

相关文章:

java.lang.LinkageError : loader constraint violation 错误

不带按钮的 JSF 显示图标

java - 从 Tomcat 6 CometProcessor 中写入是非阻塞的

java - 使用 -server JVM 选项运行 tomcat

系统类路径上的 Tomcat 6.0 类无法访问应用程序中的类

java - servlet doGet通过servlet注解调用启动两次

java - 我可以将 POJO 注入(inject) Backing Bean 吗?和 POJO 的@Entity?它是如何工作的?

hibernate - 缓存条目未使用

java - Jetty Servlet 不运行——而是获取目录列表

tomcat - 有没有办法在 J2EE 服务器启动时做一些事情?我正在使用汤姆猫