[xwiki-devs] Dropping support of Plexus (temporarily)?
Hi, I'm having 2 problems with Plexus: 1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much. 2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us. Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki-osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do. I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side. WDYT? Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue. Thanks -Vincent
Vincent Massol wrote:
Hi,
I'm having 2 problems with Plexus:
1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much.
2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us.
Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki-osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do.
I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side.
WDYT?
Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue.
We can also take a look at Guice. I don't know what the switch implies, but since we're in the early stages of 2.0, we can try it on the trunk. -- Sergiu Dumitriu http://purl.org/net/sergiu/
On Jun 1, 2009, at 11:05 AM, Sergiu Dumitriu wrote:
Vincent Massol wrote:
Hi,
I'm having 2 problems with Plexus:
1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much.
2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us.
Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki-osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do.
I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side.
WDYT?
Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue.
We can also take a look at Guice.
I don't know what the switch implies,
Only changing 3 lines in the servlet context listener. -Vincent
but since we're in the early stages of 2.0, we can try it on the trunk.
On Mon, Jun 1, 2009 at 11:05 AM, Sergiu Dumitriu <[email protected]> wrote:
Vincent Massol wrote:
Hi,
I'm having 2 problems with Plexus:
1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much.
2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us.
Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki-osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do.
I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side.
WDYT?
Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue.
We can also take a look at Guice.
I don't know what the switch implies, but since we're in the early stages of 2.0, we can try it on the trunk.
I had some reading about guice and it seems quite powerful and well designed and much lighter and focused on DI than Spring and maybe a bit "more modern and alive" than plexus even if plexus did it right... there is also an out-of-the-box OSGI integration extension http://code.google.com/p/peaberry/
-- Sergiu Dumitriu http://purl.org/net/sergiu/ _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
On Jun 1, 2009, at 11:49 AM, Pascal Voitot wrote:
On Mon, Jun 1, 2009 at 11:05 AM, Sergiu Dumitriu <[email protected]> wrote:
Vincent Massol wrote:
Hi,
I'm having 2 problems with Plexus:
1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much.
2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us.
Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki-osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do.
I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side.
WDYT?
Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue.
We can also take a look at Guice.
I don't know what the switch implies, but since we're in the early stages of 2.0, we can try it on the trunk.
I had some reading about guice and it seems quite powerful and well designed and much lighter and focused on DI than Spring and maybe a bit "more modern and alive" than plexus even if plexus did it right... there is also an out-of-the-box OSGI integration extension http://code.google.com/p/peaberry/
yep, see http://jira.xwiki.org/jira/browse/XWIKI-3949 Thanks -Vincent
On Mon, Jun 1, 2009 at 10:29 AM, Vincent Massol <[email protected]> wrote:
Hi,
I'm having 2 problems with Plexus:
1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much.
2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us.
Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki-osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do.
I didn't follow the embedded component manager... apparently it manages component descriptions with annotations? I began working with OSGI (not much yet because I'm too busy on other stuff)... what do you mean by "implementing our SPI for OSGI"?
I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side.
WDYT?
Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue.
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
On Jun 1, 2009, at 11:31 AM, Pascal Voitot wrote:
On Mon, Jun 1, 2009 at 10:29 AM, Vincent Massol <[email protected]> wrote:
Hi,
I'm having 2 problems with Plexus:
1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much.
2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us.
Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki-osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do.
I didn't follow the embedded component manager... apparently it manages component descriptions with annotations?
yes. But this is independent of the CM used.
I began working with OSGI (not much yet because I'm too busy on other stuff)... what do you mean by "implementing our SPI for OSGI"?
This means implementing the ComponentManager interface. So for ex it means doing some DI (manually as it's done in the Embedded CM for ex or with other fwk like guice), implementing a generic bundle activator that listens to events and translate that into XWiki component event, etc. Thanks -Vincent
I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side.
WDYT?
Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue.
Thanks -Vincent
Note that I've talked to Jason and he's confirmed that getting out of plexus is the way to go... Thus I'm going to switch trunk on our Embedded CM to try it out. Thanks -Vincent On Jun 1, 2009, at 10:29 AM, Vincent Massol wrote:
Hi,
I'm having 2 problems with Plexus:
1) I tried to upgrade and it's not working. They've dropped the ability to dynamically register a new component instance for an existing role. Jason Van Zyl said he's ok to fix it but he's busy on other stuff and it's been now 2 weeks since he said he'll fix it. Generally speaking there are not many people working on Plexus core so it's not moving much.
2) I tried using events (it was there in alpha-31 but seem to have disappeared in recent versions - I may be wrong. However since there's zero documentation I had to try to find it in the code and couldn't find it) and couldn't. Even in alpha-31 it doesn't work (it works only for components located in components.xml but since we're dynamically registering components it doesn't work for us.
Thus I'm more and more tempted to drop support for Plexus and instead use our Embedded component manager for now and start a xwiki- osgi module that would implement our SPI for OSGi. I've read OSGi documentation and it looks not too difficult to do.
I have all the code done for sending Component Manager events but it won't work with Plexus so I'm proposing to use our Embedded CM for now. In the meantime I'll try to talk to Jason to see what can be done on the plexus side.
WDYT?
Note that our Embedded CM hasn't been tested for multithreading so we'll need to verify it works in the 2.0 dev cycle and fix any threading issue.
Thanks -Vincent
participants (3)
-
Pascal Voitot -
Sergiu Dumitriu -
Vincent Massol