我应该在JSF 1.2 / 2.0 / 2.1中使用什么DTD来验证我的配置XML?

问题描述

| 目前,我有以下DTD:
<!DOCTYPE faces-config PUBLIC
 \"-//Sun Microsystems,Inc.//DTD JavaServer Faces Config 1.1//EN\"
 \"http://java.sun.com/dtd/web-facesconfig_1_1.dtd\">
而且它不会验证1.2标签,例如:
managed-bean => managed-property
而且我找不到新版本的sun: http://java.sun.com/dtd/ 从一些教程中,我看到人们根本不使用DTD来开发JSF 2,我应该尝试查找DTD还是JSF 1.2+弃用DTD? 非常感谢您的建议。     

解决方法

JSF 2.0没有DTD。这是XSD。
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<faces-config
    xmlns=\"http://java.sun.com/xml/ns/javaee\"
    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
    xsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd\"
    version=\"2.0\"
>
    <!-- Config here -->
</faces-config>
同样的情况适用于JSF 1.2。
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<faces-config
    xmlns=\"http://java.sun.com/xml/ns/javaee\"
    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
    xsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd\"
    version=\"1.2\"
>
    <!-- Config here -->
</faces-config>
如果您在JSF 1.2 / 2.0上使用JSF 1.1 DTD,则这些应用程序将在JSF 1.1模式下运行。您真的不想拥有它。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...