【发布时间】:2016-09-16 11:18:25
【问题描述】:
在官方 Java EE 文档https://docs.oracle.com/javaee/6/tutorial/doc/gkkqg.html 中说“会话 bean 可以实现异步方法”。 按照本教程,我无法异步执行方法。
它确实有效,但与任何其他同步方法一样。 (它不会启动任何其他线程)。
@ManagedBean(name = "inicioSSCCBean")
@SessionScoped
public class InicioSSCCBean implements Serializable {
...
@Asynchronous
public Future<String> sendMessage() {
String status;
try {
// Call to SAP server...
} catch (MessagingException ex) {
// Error handler
}
return new AsyncResult<String>(status);
}
public void otherMethod() {
String result = sendMessage().get(); // The result is what I expect
System.out.println(result);
}
...
}
有人知道如何从会话 bean 实现异步调用吗? 主要目标是调用 SAP 服务,并异步获取结果。
我正在使用 JSF 2.2,PrimeFaces。
提前致谢。
【问题讨论】:
-
你是什么意思它工作,但像任何其他同步方法?向我们展示你是如何使用它的。
-
让我知道我是否可以更清楚地表达对我糟糕的英语的抱歉。
标签: jsf asynchronous