【发布时间】:2012-07-20 06:00:32
【问题描述】:
我如何使用异步 EJB 并通过 Future 对象询问结果?谁能给我一个完整的例子。
【问题讨论】:
-
您需要更加具体。您可以发布一些代码来显示您正在尝试做什么吗?
我如何使用异步 EJB 并通过 Future 对象询问结果?谁能给我一个完整的例子。
【问题讨论】:
在 EJB 3.1 之前,如果要执行异步处理必须使用 JMS 和 MDB,在 EJB 3.1,您可以在必须异步调用的方法上使用带有@Asynchronous注解的简单会话EJB。
@Stateless
@Remote(HelloEjbAsynchronousRemote.class)
public class HelloEjbAsynchronous implements HelloEjbAsynchronousRemote {
@Asynchronous
@Override
public Future<String> ejbAsynchronousSayHello(String name){
如果你的方法有返回值,你的方法必须返回一个 AsyncResult 对象,它是 Future 的实现。
return new AsyncResult<String>("Hello "+name);
【讨论】: