2

我知道可以使用ServiceTracker将 OSGi 服务注入 EJB。

但是,我应该如何使用OSGi Blueprint XML 配置向标准 EJB 注入服务,以便在其他地方使用 EJB 时可以使用服务?还是真的不可能,因为 EJB 在它们自己的层中工作?

我一直在尝试使用 Aries Blueprint 和 Gemini Blueprint 以及 JBoss AS7 来做到这一点,但没有运气。

作为示例bean:

import javax.annotation.PostConstruct;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;

import org.osgi.framework.BundleContext;

@Stateless
@LocalBean
public class SimpleStatelessSessionBean {

  InformationService service; // how'd I go about to get this populated?

  @PostConstruct
  public void init() {

  }

  public String getMessage() {

    if (service == null)
      throw new IllegalStateException("Service not available");

    return "EJB:" + service.getMessage();
  }
}
4

1 回答 1

1

看来我问的不太可能。

可能的是

于 2012-12-21T12:13:01.047 回答