Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Currently, the class hierarchy for OpenWebBeansEjbPlugin is:
OpenWebBeansEjbPlugin -> OpenWebBeansJavaEEPlugin -> OpenWebBeansWebPlugin -> OpenWebBeansPlugin
This forces an OWB EJB plugin to be a web plugin and an EE plugin. This can be problematic for processes that provide an EJB and web container. Currently, if the EJB plugin is defined first in org.apache.webbeans.spi.plugins.OpenWebBeansPlugin, then it will always be selected as the web plugin. To work around this problem, a web plugin has to be defined before the EJB plugin.
I also think OpenWebBeansJavaEEPlugin should be removed from OpenWebBeansEjbPlugin's class hierarchy for similar reasons. A provider should be able to specify the plugin that will serve as the EE plugin and not be forced to use OpenWebBeansEjbPlugin as the EE plugin.
I think the resulting plugin class hierarchy should become:
OpenWebBeansEjbPlugin -> OpenWebBeansPlugin
OpenWebBeansWebPlugin -> OpenWebBeansPlugin
OpenWebBeansJavaEEPlugin -> OpenWebBeansPlugin