[
https://issues.apache.org/jira/browse/MYFACES-2290?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12769396#action_12769396
]
Leonardo Uribe commented on MYFACES-2290:
-----------------------------------------
I have checked the patch, but unfortunately it contains an serious bug. The
following classes added in the patch:
javax.faces.component._BundleUtils
javax.faces.component._BundleProxyClassLoader
javax.faces.component._Activator
are public classes. No public classes could be added to myfaces-api, because do
that breaks binary compatibility with ri. The problem is that according to OSGi
javadoc, BundleActivator instances should have a public no args constructor.
Suggestions are welcome
> Add OSGi bundle information and bundle classloader / activator
> --------------------------------------------------------------
>
> Key: MYFACES-2290
> URL: https://issues.apache.org/jira/browse/MYFACES-2290
> Project: MyFaces Core
> Issue Type: New Feature
> Components: General
> Affects Versions: 1.2.8-SNAPSHOT
> Environment: OSGi (Equinox, Apache Felix, ...)
> Reporter: Felix Röthenbacher
> Assignee: Leonardo Uribe
> Priority: Critical
> Attachments: myfaces-core.diff.txt, myfaces-shared.diff.txt
>
>
> The provided patch will add OSGi information to bundle manifest. A bundle
> activator class makes the MyFaces framework aware that it is running in a
> bundle environment. A bundle classloader is used to load classes and
> resources from the bundle classpath. The patch doesn't require any new
> runtime dependencies and doesn't affect class loading in a non-OSGi
> environment. Though, small modifications to classloading were needed. This
> was mainly replacing Thread.currentThread.getContextClassLoader() with
> ClassUtils methods.
> To run MyFaces in an OSGi environment both bundles (myfaces-api and
> myfaces-impl) have to be started in the OSGi container. Additionally, the
> myfaces-impl bundle has to be made available to myfaces-api. Use a fragment
> bundle with myfaces-api as Fragment-Host and myfaces-impl as Required-Bundle.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.