EJB bean可以实现多个接口吗?

7

除了业务接口(@Local、@Remote)或无接口视图(@LocalBean)外,EJB bean是否可以实现多个用户定义的接口?

例如,定义两个没有注释的接口UserInterface1、UserInterface2。

是否可以合法地实现这样的操作:

@Stateless
public class MyBean implements UserInterface1, UserInterface2 { ...

然后我还有另一个困惑:
@Stateless
public class MyBean implements Runnable { ...
//inside I won't try to manage thread
}

这是合法的还是非法的,我发现Glassfish支持这种情况。

1个回答

6

如果我只实现一个接口(仍然没有任何注解),会怎么样?这个接口可以是用户定义的,也可以是来自某些Java包(例如java.lang.)的接口。这种实现是否违法? - user1684651
一个接口似乎可以在不使用任何注释的情况下合法。请参阅http://docs.oracle.com/javaee/6/api/javax/ejb/Local.html。 - Arjan Tijms
3
答案非常好,尽管它没有回答主题问题。我的回答是,“是的,EJB可以实现多个接口,但在这种情况下,您必须明确指定哪些接口是业务接口,使用@Local或ejb-jar.xml来说明。” - Brett Kail
@bkail,主题标题说“多个接口”,但是帖子开头询问多个接口,除了业务接口。不幸的是,混合(多个)业务接口和(多个)常规接口的情况并不那么清晰。 - Arjan Tijms
即使考虑到David的帖子,当在bean类上指定(非空)@Local时,语义似乎非常清晰。无论如何,如果OP满意,那就是最重要的:-)。 - Brett Kail

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接