beans.xml ファイルにデコレーターまたはインターセプターが含まれている場合は、適切なインスタンス化のために有効なスキーマを使用する必要があります。 ファイル内の名前空間は、beans.xmlと一致しなければなりません。 ファイルの名前空間は、該当するCDIバージョンの仕様と一致していなければなりません。
This rule scans beans.xml files to see if a
valid namespace is provided on the xmlns 属性。
以下の例では、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 ファイルの処理時に例外をスローします。 以下の JVM プロパティーを設定することで、検証を無効にすることができます。
org.jboss.weld.xml.disableValidating=true
名前空間が指定されていない場合、この規則は beans.xml ファイルにフラグを立てません。
Java EE 7 で提供されている CDI 1.2 を使用することを検討している場合は、『 Contexts and Dependency Injection 1.2 behavior changes』を参照してください。