2

当我尝试向<a4j:support>JSF 2.0 添加标签时,出现以下错误

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

这是如何引起的,我该如何解决?

4

1 回答 1

1

命名空间 URIhttps://ajax4jsf.dev.java.net/ajax可识别为来自Ajax4jsf 1.x 的那个,它存在于史前,早在 2006 年 RichFaces 3.x 收购 Ajax4jsf 之前。Ajax4jsf 1.x 是一个古老的标签库,针对 JSP 上的 JSF 1.1,早在 JSF 2.0 引入内置 ajax 功能之前。

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

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

祝你好运。

于 2013-04-16T00:19:25.937 回答