我有一个带有@ManagedBean批注的ParentBean
类。如果我将此类作为子类,则尽管@ManagedBean批注具有元注释Inherited,但ChildBean
不会继承@ManagedBean批注。
我想念什么?
JSF 2.0
Mojarra 2.0.6 | JBoss 5.1.0.GA
Eclipse Indigo-内部版本号:20110615-0604
编辑:仍在寻找解决方案...
最佳答案
javax.annotation.ManagedBean
没有@Inherited
。 javax.faces.ManagedBean
有。检查您的进口。
此外,我不会依赖于此。我没有在规范中定义它,但是通常,使用jsf托管bean进行继承是一个坏主意。即使拥有它,您也应该有一个抽象基类,该基类具有通用功能,但它本身不是托管bean。
另一件事-如果您在Bean上没有注释,则稍后阅读代码会更加困难。读者可能需要一段时间才能意识到它已被继承。
因此,在每个bean上放置@ManagedBean
,不要过度使用继承。