There are a small number of known restrictions that apply
when working with OSGi Applications.
List of known OSGi Applications issues
and restrictions
Web bundles and persistence bundles
are not compatible regarding injection of persistence contexts
Managed
persistence units and managed persistence contexts from a persistence
bundle cannot be injected into a web component.
The directory structure within the
installedEBAs directory might change
The directory structure
within the profile_root/installedEBAs directory
might change over time, for both new and existing enterprise bundle
archive (EBA) files. Therefore your programs should not assume that
this directory structure is fixed.
Enterprise JavaBeans (EJBs) cannot be invoked directly
from an OSGi application
An OSGi bundle or a web application
bundle (WAB) cannot look up and invoke an EJB directly. However, an
OSGi application can interact with EJB modules through either Service
Component Architecture (SCA) or the Java™ Message
Service (JMS):
- An OSGi application can be included in an SCA environment, and
the SCA modules can be configured to bind to EJB modules.
- An OSGi application can interact with EJBs by sending JMS messages
to destinations, and configuring the EJBs or message driven beans
(MDBs) to retrieve the messages from those destinations and respond
to them.