Se un file beans.xml include decoratori o intercettatori, per creare un'istanza corretta รจ necessario utilizzare uno schema valido. L'ubicazione dello schema e dello spazio dei nomi nel file beans.xml deve corrispondere alla specifica per la versione CDI applicabile.
Questa regola analizza i beans.xml per vedere se lo spazio dei nomi fornito nell'opzione xmlns
corrisponde a alla posizione dello schema corrispondente sul file
schemaLocation attributo.
Il seguente esempio mostra un file beans.xml valido per la specifica CDI 1.0.
<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>
Il seguente esempio mostra un file beans.xml valido per la specifica CDI 1.2.
<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>
Se non viene fornito alcuno spazio dei nomi, la regola non contrassegna il file beans.xml.
La correzione automatica per questa regola aggiorna gli spazi dei nomi incompatibili con il valore appropriato per il file specificato schemaLocation. Copiare la configurazione personalizzata (custom configuration) nel file di build dell'applicazione per abilitare l'automazione delle correzioni.
Se si prevede di utilizzare il CDI 1.2 fornito con Java EE 7, vedere Contexts and Dependency Injection 1.2 behavior changes.