"h"、"f"、...在雅加达 EE 9 的 JSF 页面中?

  • 本文关键字:JSF EE 雅加达 jsf jakarta-ee
  • 更新时间 :
  • 英文 :


我尝试了xmlns:h="jakarta.faces.html"xmlns:h="http://jakarta.faces.html"xmlns:h="https://jakarta.faces.html"和其他类似的字符串,但似乎都不起作用。

xmlns:h="jakarta.faces.html"是在Faces 4.0中引入的,它是雅加达EE 10的一部分。

在JSF3.0中,雅加达EE9的一部分,它仍然是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/*
  • 雅加达EE 8/JSF 2.3:javax.faces.*http://xmlns.jcp.org/jsf/*
  • 雅加达EE 9/JSF 3.0:jakarta.faces.*http://xmlns.jcp.org/jsf/*
  • 雅加达EE 10/Faces 4.0:jakarta.faces.*jakarta.faces.*

需要注意的是,XML命名空间URI在每个新版本中都是向后兼容的。因此,在例如Faces 4.0中,您仍然可以使用jakarta.faces.*旁边的http://java.sun.com/jsf/*http://xmlns.jcp.org/jsf/*URI。但显然不建议这样做,因为对旧URI的支持在未来的某个时候仍然容易被删除,并且在新URI中首次引入的任何新组件/标签都不一定可以通过旧URI获得。

Faces4.0是第一个使用URN而不是URL作为XML命名空间URI的版本。因此,前缀为http(s)://的URL表单无效。使用URN而不是URL的原因是,这些标签库URI首先不能作为返回某种XSD文件的物理web资源使用,因此在初学者中造成了混乱。此外,URNs更适合未来使用,因为您不必包含像java.sun.comxmlns.jcp.org这样的主机名,这些主机名比API名称对名称/所有者的更改更敏感。

另请参阅:

  • Faces 4.0:重命名xmlns.jcp.org标签库URI
  • 哪个XML命名空间与JSF 2.2及更高版本一起使用
  • JSF返回带有纯/原始XHTML/XML/EL源代码的空白/未解析页面,而不是呈现的HTML输出

最新更新