可以异步调用返回到managedbean吗?

时间:2017-12-19 12:34:40

标签: asynchronous ejb managed-bean

我正在开发一个应用程序,我们必须建立,现在同步工作程序的某些步骤变得异步。我们使用JSF作为前端,我们有managedbeans和EJB-s。

在深入研究这个主题之后,我发现,我们不能在ManagedBeans中创建异步方法,因为它们不受支持,因此它们在大多数情况下都不起作用(理论上对于没有人,但它适用于有些人根据评论)。

理论上我知道支持异步执行意味着异步函数执行将在新线程中发生。在我开始异步执行后,我可以在函数中调用其他函数(如println)。那么这是否意味着,我也可以回调托管bean?或者他们不支持异步执行的那部分?如果没有,为什么不可能呢?

通过回电我的意思是这样的:

@ManagedBean
@ViewScoped
public class managedBean{

@EJB
private AsynchronClass asychronClass;

  public void function(){
     asychronClass.callAsynchronFunction(this);
  }

  public void functionAsynch(){
     //do the original things
  }
}

@LocalBean
@Stateless
public class AsychronClass{

  public void callAsynchronFunction(managedBean mB){
     mB.functionAsynch();
  }
}

0 个答案:

没有答案