Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Validation 如何根据facelet标记库验证xhtml中的标记_Validation_Jsf 2_Primefaces_Taglib - Fatal编程技术网

Validation 如何根据facelet标记库验证xhtml中的标记

Validation 如何根据facelet标记库验证xhtml中的标记,validation,jsf-2,primefaces,taglib,Validation,Jsf 2,Primefaces,Taglib,我想做的是编写一个maven插件来验证xhtml文件,这样,如果任何标签的属性不属于、拼写错误或者存在任何其他类型的验证错误,构建就会失败 我们正在使用Primefaces 6.0,我们希望包括这些标签的验证。问题是,在Primefaces jar文件中,我只能找到一个facelet taglib文件(对于文件夹META-INF/Primefaces-p.taglib.xml中的Primefaces 6.0),我不知道如何根据facelet taglib文件验证xhtml文件 我知道如何编写Ja

我想做的是编写一个maven插件来验证xhtml文件,这样,如果任何标签的属性不属于、拼写错误或者存在任何其他类型的验证错误,构建就会失败

我们正在使用Primefaces 6.0,我们希望包括这些标签的验证。问题是,在Primefaces jar文件中,我只能找到一个facelet taglib文件(对于文件夹META-INF/Primefaces-p.taglib.xml中的Primefaces 6.0),我不知道如何根据facelet taglib文件验证xhtml文件

我知道如何编写Java代码来使用模式文件进行验证,但我没有找到任何在xhtml文件中针对facelet taglib(特别是Primefaces taglib xml taglib文件)验证标记的Java示例

我已尝试加载taglib文件,如下所示

SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
InputStream stream = ..[file primefaces-p.taglib.xml]..;
Schema schema = schemaFactory.newSchema(new StreamSource(stream));  
但我只得到以下错误:

org.xml.sax.SAXParseException;行号:7;栏目编号:39;s4s elt字符:“xs:appinfo”和“xs:documentation”之外的架构元素中不允许使用非空白字符。看到“”

我想可能我使用了错误的XMLConstants变量,但我不确定该使用哪一个,或者这是否可行

另一个注意事项是,我知道现有的XMLMaven插件,但我无法让它与primefaces facelet taglib一起使用。如果有人知道如何使用taglib,请告诉我们


任何帮助都将不胜感激

标记库不是模式库,因此无法工作。但是descent IDE将使用TagLib为您执行类似的验证,但方式不同

感谢您的反馈。能够在IDE中进行验证会有所帮助,但最终目标是能够在Maven构建期间运行验证。