[
https://issues.jboss.org/browse/CDI-114?page=com.atlassian.jira.plugin.sy...
]
Vincent Massol commented on CDI-114:
------------------------------------
{quote}So you have multiple 'apps' already running as each of your Wiki-namespace
is essentially an own 'app' from a CDI pov, right?{quote}
Not sure. Basically we have a Root Component Manager containing components seen by all
namespaces (ie all wikis) and then each subwiki have their own Wiki Component Manager that
contain components only seen by those subwikis (so in addition to the components located
in the Root Component Manager).
{quote}Would it be possible to bootstrap a new namespace instance and then just swapping
out the original one with the freshly booted one? Looks much cleaner to me.{quote}
So you're essentially saying the same thing as what was said earlier but with even
most cost in term of performance, no? I.e recreate the classloaders (the root one and the
wiki ones affected by the new component/bean being added) + reinitialize CDI (ie scanning
and bean resolving), every time a new component is to be added at runtime.
I don't know the performance of such an option but as I mentioned, we do have
thousands and thousands of components/beans loaded, with some have initialization steps.
IMO that would really be overkill in term of performance. Also in XWiki it's not that
unfrequent to add new components at runtime. For example users can creates new macros as
script in wiki pages and underneath they get registered as proper components/beans.
Thanks
Allow registration of beans at runtime
--------------------------------------
Key: CDI-114
URL:
https://issues.jboss.org/browse/CDI-114
Project: CDI Specification Issues
Issue Type: Feature Request
Components: Beans
Affects Versions: 1.0
Reporter: Vincent Massol
Fix For: TBD
I have use cases where I need to register a bean dynamically at runtime (see the forum
reference link for a detailed description of the use case).
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)