Nell'implementazione di CDI (Contexts and Dependency Injection) 1.0 OpenWebBeans, un'applicazione può partire correttamente anche se i campi con l'annotazione @Produces vengono dichiarati nelle classi del bean di sessione, anche se il comportamento non è congruente alla specifica CDI 1.0.
Nell'implementazione di CDI 1.2 Weld, l'applicazione non parte e genera la seguente eccezione:
WELD-000096: Producer fields on session beans must be static. Field [{0}] declared on [{1}].
È possibile risolvere questo problema aggiungendo il modificatore statico nei campi del produttore nel bean di sessione.
Questa regola contrassegna i campi non statici con l'annotazione @Produces dichiarata nelle classi del bean di sessione.
I seguenti elementi ed annotazioni definiscono una classe come bean di sessione:
ejb-jar.xmlejb-jar.xmlejb-jar.xml@Singleton, @Stateless o @Stateful nella dichiarazione della classePer ulteriori informazioni, consultare le seguenti risorse: