В реализации Contexts and Dependency Injection (CDI) 1.0 OpenWebBeans успешный
запуск приложения возможен даже в том случае, если в классах сеансовых EJB
объявлены нестатические поля с аннотацией @Produces, хотя это противоречит спецификации CDI 1.0.
В реализации CDI 1.2 Weld при запуске такого приложения возникает ошибка и генерируется следующая исключительная ситуация:
WELD-000096: Поля Producer в сеансовых EJB должны быть статическими. Поле [{0}] объявлено в [{1}].
Для устранения этой неполадки добавьте модификатор static в поля Producer сеансовых EJB.
Это правило отмечает нестатические поля с аннотацией @Produces, объявленные в классах сеансовых EJB.
Класс определяется как сеансовый EJB при наличии следующих элементов и аннотаций:
ejb-jar.xml ejb-jar.xml ejb-jar.xml @Singleton, @Stateless или @Stateful в объявлении классаДля решения этих проблем в приложении существует автоматическое исправление. Это исправление можно применить, скопировав пользовательскую конфигурацию в файл сборки приложения.
Дополнительная информация: