CDI - was ist die richtige bean.xml format?
Ich habe eine Frage über das richtige format und die Verwendung der bean.xml Datei. In meinen Projekten habe ich in der Regel verwendet, diese Inhalte für meine bean.xml Dateien (keine explizit bean-Deklaration verwendet):
<?xml version="1.0" encoding="UTF-8"?>
<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>
Funktioniert dies auch in WildFly 8 und 9. Aber ich habe Probleme bei der Bereitstellung in GlassFish 4. In der Frage: Glassfish 4, einfaches Beispiel in der CDI schlägt mit WELD-001408 Unsatisfied dependencies schrieb ich über eine alternative format:
<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">
</beans>
Gibt es einen anderen namespaces verwendet. Und GlassFish4 scheint zu kümmern, dass.
Was ist das richtige format für eine leere bean.xml die Datei, die das JEE7 ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Richtig leer
beans.xml
werden kann völlig leer Datei, wirklich 😉Aber wenn Sie wollen, fügen Sie einige Inhalte, bitte beachten Sie, dass die meisten der XML-deployment-descriptor namespaces wurden aktualisiert in Java EE 7. Diese post beschreibt die details. Auch
bean-discovery-mode
wurde Hinzugefügt.BTW: Probe
beans.xml
die ich bin gerade jetzt aussieht:Können Sie feststellen, die Verwendung von
version="1.2"
Attribut - Sie können frei gesetzt werden, es zu1.1
. Es dient nur als Erinnerung für den Leser, das Projekt mit CDI-1.2 (die in der Tat ist nur ein Maintenance-release der CDI 1.1 - Spezifikation).