会话 bean 上的 Producer 字段必须为静态

在 Contexts and Dependency Injection (CDI) 1.0 OpenWebBeans 实现中,即使在会话 bean 类中声明具有 @Produces 注释的非静态字段,应用程序也可以成功启动,虽然该行为不符合 CDI 1.0 规范。 在 CDI 1.2 Weld 实现中,应用程序将无法启动,并且会抛出以下异常:

WELD-000096: Producer fields on session beans must be static. Field [{0}] declared on [{1}].

您可以通过向会话 bean 上的 producer 字段添加静态修饰符来解决此问题。

此规则将标记具有会话 bean 类中声明的 @Produces 注释的非静态字段。 以下元素和注释将类定义为会话 bean:

有关更多信息,请参阅以下资源: