当池中没有可用的ejb实例时,在Web服务中注入Ejb

时间:2016-08-26 12:10:10

标签: ejb websphere ejb-3.0 websphere-8

我想知道当池中没有可用的ejbs且客户端正在尝试访问使用ejb的Web服务时会发生什么。

我们在使用ejb实例调用方法的行接收NPE。不幸的是,我现在无法访问日志,我正在试图找出问题所在。所以我正在思考所有可能的方式,这个问题在我的脑海中浮现。

有人可以告诉我吗?

我认为,在池中有ejb实例之前,不会初始化Web服务。因此,在这种情况下,请求将排队,并在一段时间后客户端将收到超时错误或适当的消息。我是对的吗?

P.S 顺便说一句,如果它有任何区别,我正在使用@EJB注释注入ejb。

1 个答案:

答案 0 :(得分:0)

如果您使用对SLSB的引用,则初始化只是一个代理,不需要任何实例。 在运行时,调用尝试从池中获取实例,如果所有实例都忙,它将被阻塞一段时间(默认为5秒)并在超时时抛出异常,否则只是继续。 如果你得到一个NPE,这在我看来是一个不同的问题,你无法获得参考。 有状态的bean是不同的,但我认为你不会使用它。

我认为无论你使用哪个容器都应该是一样的。