0

我的项目正在使用 JSF2.0 和 WAS8.0。我使用@ConversationScoped CDI bean 作为我页面的支持 bean。我对这个 bean 的原始注释是:

    @Named("myBean")
    @ConversationScoped
    @Stateful

然后在加载页面时,出现 Property not found 错误。似乎 EL 完全不起作用。然后我添加了@LocalBean(我的backing bean MyBean确实实现了接口,但是接口上没有@Local注解):

    @Named("myBean")
    @LocalBean
    @ConversationScoped
    @Stateful

然后一切正常。它是 WebSphere 中特定的东西吗?或者 CDI 的一个常见要求(我想我已经看到了一些既没有 @LocalBean 也没有实现 @Local 注释接口的示例。

4

1 回答 1

1

对我来说似乎有必要,也许您看到的其他 bean 不是 EJB bean:

会话 bean 的不受限制的 bean 类型集包含 bean 的所有本地接口及其超接口。如果会话 bean 具有 bean 类本地视图,则不受限制的 bean 类型集包含 bean 类和所有超类。此外,java.lang.Object 是每个会话 bean 的 bean 类型。

远程接口不包括在 bean 类型集中。

于 2013-03-16T13:37:22.670 回答