A CDI megkeresi az implicit komponenseket, amikor nincs beans.xml fájl

A Kontextus és függőség beszúrás (CDI) 1.1 specifikáció implicit komponens feltérképezési módot vezetett be, ami viselkedés- és teljesítményváltozásokat eredményezett a Java Platform, Enterprise Edition (Java EE) 6 CDI 1.0 megvalósításhoz képest a WebSphere Application Server kiszolgálón.

Ez a szabály megjelöli a WEB-INF vagy META-INF mappát, ha a projekt nem tartalmaz egy beans.xml fájlt. Amikor áttér a Java EE 6 CDI 1.0 változatról a Java EE 7 CDI 1.1 vagy újabb változatra, az implicit komponens feltérképezés azt eredményezi, hogy a futási időben elemzett összes WAR és JAR fájl elemezve lesz, még akkor is, ha nem tartalmaznak egy beans.xml fájlt. Ez a komponens feltérképezési teljesítmény csökkenéséhez vezethet, ha engedélyezi a cdi-1.2 Szolgáltatás a Libertyoldalon.

A Java EE 7 változatban, ha nincs meghatározva beans.xml fájl, akkor a futási környezet automatikusan komponenseket meghatározó annotációkat keres. A viselkedés letiltásához adjon hozzá egy beans.xml fájlt none értékre beállított komponens feltérképezési móddal, ahogy a következő példában látható.


<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="none" version="1.1">
</beans>

Liberty kiszolgálón ezt a viselkedést úgy is letilthatja, hogy hozzáadja a következő tulajdonságot a server.xml fájlhoz.


<cdi12 enableImplicitBeanArchives="false"/>

Hagyomány WebSphere Application Server kiszolgálón a viselkedés a következő módokon tiltható le:

A tulajdonságok hagyományos WebSphere kiszolgálón történő beállításával kapcsolatos további információkért tekintse meg az Egyéni tulajdonságok az alkalmazásindítás javításához WebSphere Application Server kiszolgálón dokumentációt.

A Java EE 7 CDI 1.2 megvalósítással kapcsolatos további információkért tekintse meg a következőt: Contexts and Dependency Injection 1.2 viselkedésváltozásai.