标签库支持名称空间:https://ajax4jsf.dev.java.net/ajax,但没有为名称定义标记:支持

时间:2013-04-15 13:32:17

标签: jsf taglib ajax4jsf

当我尝试将<a4j:support>标记添加到JSF 2.0时,我收到以下错误

  

标记库支持命名空间:https://ajax4jsf.dev.java.net/ajax,但没有为name:support

定义标记

这是如何引起的?如何解决?

1 个答案:

答案 0 :(得分:1)

名称空间URI https://ajax4jsf.dev.java.net/ajax可以识别为Ajax4jsf 1.x中存在于历史记录中的那个,早在2006年由RichFaces 3.x收购Ajax4jsf之前很久.Ajax4jsf 1.x是一个早在JSF 2.0引入内置ajax功能之前,早期针对JSP的JSF 1.1的古代标记库。

更进一步,目前使用JSF 2.0,JSP已被弃用并由Facelets取代(很多初学者过度概括为“XHTML”)。像Ajax4jsf 1.x这样的JSP目标标记库与Facelets不兼容。您基本上需要一个JSF 2.0兼容的标记库。如果您正在寻找Ajax4jsf功能,那么您应该寻找RichFaces 4.x.请注意,<a4j:support>已将RichFaces 4.x重命名为<a4j:ajax>,以符合JSF 2.0标准<f:ajax>

然而,如上所述,JSF 2.0因此已经提供了<f:ajax>风格的内置ajax功能。鉴于您正在尝试在JSF 2.0上使用Ajax4jsf 1.x,您可能正在阅读一本绝对过时的JSF书籍/教程/资源。我强烈建议把它放在一边,寻找一个更新的,如果你想要一个JSF 2.0目标,最好不要超过2010年。您可以在our JSF wiki page底部的某处找到几个理智的教程。

祝你好运。