beans.xml ファイルにデコレーターまたはインターセプターが含まれている場合は、適切なインスタンス化のために有効なスキーマを使用する必要があります。beans.xml ファイル内の名前空間およびスキーマ・ロケーションは、該当する CDI バージョンの仕様に合致している必要があります。
このルールは、beans.xmlファイルをスキャンして
で指定された名前空間が xmlns 属性は
の対応するスキーマの場所にマッチします。 schemaLocation 属性。
以下の例では、CDI 1.0 仕様での有効な beans.xml ファイルを示します。
<beans 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/beans_1_0.xsd">
</beans>
以下の例では、CDI 1.2 仕様での有効な beans.xml ファイルを示します。
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
bean-discovery-mode="all" version="1.1">
</beans>
名前空間が指定されていない場合、この規則は beans.xml ファイルにフラグを立てません。
このルールの自動修正により、非互換の名前空間が、指定された schemaLocationに該当する値で更新されます。 カスタム構成をアプリケーション・ビルド・ファイルにコピーして、フィックスの自動化を有効にします。
Java EE 7 で提供される CDI 1.2 の使用を検討している場合は、 Contexts and Dependency Injection 1.2 での振る舞いの変更を参照してください。