我使用的是JSF1.2 + Richface 3.3.3。我试图设计一个列过滤器,过滤包含该特定字符串的所有行。我尝试在下一页上实现示例:http://showcase.richfaces.org/richfaces/component-sample.jsf?demo=dataTable&sample=tableFiltering&skin=blueSky
但我得到一个错误“标签库支持名称空间,但没有为名称定义标签:ajax”
我该怎么做呢
你正在寻找RichFaces 4.3的展示,RichFaces 3.3.x的展示是here。
<a4j:ajax>
不属于RF 3,因此错误。在RF 3中,该组件称为<a4j:support>
。
一般来说,错误
标记库支持名称空间:http://richfaces.org/rich,但没有为名称定义标记:XYZ
表示您的richfaces版本要么早于在框架中引入此组件,要么晚于从框架中删除此组件。基本上,您正在使用的richfaces版本中不存在该组件。
以下是检查richfaces版本的方法:How do I know which version of RichFaces I am running?
你可以去http://richfaces.jboss.org/download/archive,下载你正在使用的版本的jar,解压缩它,然后搜索一个与你的组件同名的类。在解压缩的jar中,打开文件夹artifacts
。
在artifacts/ui
内,解压缩罐子richfaces-components-api
和richfaces-components-ui
。
在artifacts/framework
内,解压缩罐子richfaces-core-api
和richfaces-core-imp
。
在这4个位置,有一个带有/org
子文件夹的richfaces
文件夹。我认为这些是您可以查找要使用的组件的唯一地方。