提问人:user1643352 提问时间:7/19/2021 更新时间:2/6/2023 访问量:2850
“h”、“f”、...在 Jakarta EE 9 的 JSF 页面中?
What are the namespaces for "h", "f", ... in a JSF page for Jakarta EE 9?
问:
我尝试了 、 和其他类似的字符串,但似乎没有任何效果。xmlns:h="jakarta.faces.html"
xmlns:h="http://jakarta.faces.html"
xmlns:h="https://jakarta.faces.html"
答:
它是在 Jakarta EE 10 的 Faces 4.0 中引入的。xmlns:h="jakarta.faces.html"
在 JSF 3.0(Jakarta EE 9 的一部分)中,它仍然是 .xmlns:h="http://xmlns.jcp.org/jsf/html"
要使用的 API 包和 XML 命名空间 URI 的摘要:
- J2EE 1.4 / JSF 1.0-1.1: 和
javax.faces.*
http://java.sun.com/jsf/*
- Java EE 5 / JSF 1.2: 和
javax.faces.*
http://java.sun.com/jsf/*
- Java EE 6 / JSF 2.0-2.1: 和
javax.faces.*
http://java.sun.com/jsf/*
- Java EE 7 / JSF 2.2:和
javax.faces.*
http://xmlns.jcp.org/jsf/*
- Java EE 8 / JSF 2.3:和
javax.faces.*
http://xmlns.jcp.org/jsf/*
- Jakarta EE 8 / JSF 2.3: 和
javax.faces.*
http://xmlns.jcp.org/jsf/*
- Jakarta EE 9 / JSF 3.0:和
jakarta.faces.*
http://xmlns.jcp.org/jsf/*
- Jakarta EE 10 / Faces 4.0:和
jakarta.faces.*
jakarta.faces.*
请注意,XML 命名空间 URI 在每个较新版本中都向后兼容。因此,在 Faces 4.0 中,您仍然可以使用 旁边的 和 URI。但显然不建议这样做,因为对旧 URI 的支持仍然容易在未来某个时候被删除,并且在较新的 URI 中首次引入的任何新组件/标记不一定通过较旧的 URI 提供。http://java.sun.com/jsf/*
http://xmlns.jcp.org/jsf/*
jakarta.faces.*
Faces 4.0 是第一个使用 URN 而不是 URL 作为 XML 命名空间 URI 的版本。所以带前缀的URL表单是无效的。使用 URN 而不是 URL 的原因是,这些 taglib URI 首先不能作为返回某种 XSD 文件的物理 Web 资源使用,因此在初学者中引起了混淆。此外,URN 更面向未来,因为您不一定需要包含主机名,例如 或 或 与 API 名称相比,它对名称/所有者的更改更敏感。http(s)://
java.sun.com
xmlns.jcp.org
另请参阅:
- Faces 4.0:重命名 xmlns.jcp.org taglib URI
- 用于 JSF 2.2 及更高版本的 XML 命名空间
- JSF 返回带有纯/原始 XHTML/XML/EL 源代码的空白/未解析页面,而不是呈现的 HTML 输出
评论