Re: Pluggable architecture for wicket application
You can try wicket-plugin [1]. [1] https://github.com/decebals/wicket-plugin -- View this message in context: http://apache-wicket.1842946.n4.nabble.com/Pluggable-architecture-for-wicket-application-tp4676135p4676192.html Sent from the Users forum mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Pluggable architecture for wicket application
Hi Guys Does anybody know of a small scale example this sounds really interesting. Thanks David On 17 November 2016 at 18:00, Matt Pavlovich wrote: > I extensively use Wicket+OSGi. Works great! Modular web applications are > totally doable. Follow Martin's advice and wire in modules using the > application hooks described. > > > > On 11/14/16 3:47 PM, Martijn Dashorst wrote: > >> I know a Dutch company (or two) that use OSGi, I'm certain that one >> uses Wicket + OSGi: educator.eu. The other, luminis.eu, does a lot of >> work with OSGi, but might not use it in combination with Wicket. I >> only have second hand knowledge about the combination, and it's >> probably outdated. >> >> Maybe someone from those companies is listening here and cares to comment. >> >> Martijn >> >> On Mon, Nov 14, 2016 at 8:13 PM, Martin Grigorov >> wrote: >> >>> Hi, >>> >>> On Mon, Nov 14, 2016 at 3:58 AM, Илья Нарыжный wrote: >>> >>> Hello, We really need advise from Apache Wicket experts. Please let me know if you have any ideas how to realize the following: We are working on Orienteer (http://orienteer.org) - open source Business Application Platform for rapid development. Orienteer already has pluggable architecture which allow to start/stop/restart modules and etc. Every module can bring different things: new webpages, REST, wicket components and etc. For example: https://github.com/OrienteerBAP/Orienteer/tree/master/ orienteer-pivottable But there is plans to allow dynamically upload required new module (without recompiling whole WAR with new module). To upload person can literally upload JAR or enter URL with the module or specify Maven's groupId:artifactId:version. There is no problem with downloading of module: there is a problem with runtime running it. Questions: 1) Is there good way for substitution of your own ClassLoader for more dynamic management? Wicket doesn't manage class loaders. The web container (like Tomcat) >>> deals >>> with this. >>> The only hook provided by Wicket is org.apache.wicket.protocol. >>> http.WicketFilter#getClassLoader(). See org.apache.wicket.protocol.http. >>> ReloadingWicketFilter#reloadingClassLoader. >>> >>> >>> 2) Is there a way for restarting of wicket app without restarting a web-container? You may use WebApplication#initApplication() and #internalDestroy(). >>> Also >>> see what ReloadingWicketFilter does. >>> >>> >>> 3) Related to p.1: any good experience with using this: https://github.com/kamranzafar/JCL ? IMO this should work to load extra jars dynamically. I didn't see >>> anything >>> about unloading though. >>> >>> >>> 4) Any other suggetions how to make dynamically pluggable modules in wicket? Some people use OSGi (with PAX). I don't have much experience to be >>> able to >>> comment. >>> >>> >>> Thanks, Ilya - Orienteer(http://orienteer.org) - open source Business Application Platform >> >> > > - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > >
Re: Pluggable architecture for wicket application
I extensively use Wicket+OSGi. Works great! Modular web applications are totally doable. Follow Martin's advice and wire in modules using the application hooks described. On 11/14/16 3:47 PM, Martijn Dashorst wrote: I know a Dutch company (or two) that use OSGi, I'm certain that one uses Wicket + OSGi: educator.eu. The other, luminis.eu, does a lot of work with OSGi, but might not use it in combination with Wicket. I only have second hand knowledge about the combination, and it's probably outdated. Maybe someone from those companies is listening here and cares to comment. Martijn On Mon, Nov 14, 2016 at 8:13 PM, Martin Grigorov wrote: Hi, On Mon, Nov 14, 2016 at 3:58 AM, Илья Нарыжный wrote: Hello, We really need advise from Apache Wicket experts. Please let me know if you have any ideas how to realize the following: We are working on Orienteer (http://orienteer.org) - open source Business Application Platform for rapid development. Orienteer already has pluggable architecture which allow to start/stop/restart modules and etc. Every module can bring different things: new webpages, REST, wicket components and etc. For example: https://github.com/OrienteerBAP/Orienteer/tree/master/orienteer-pivottable But there is plans to allow dynamically upload required new module (without recompiling whole WAR with new module). To upload person can literally upload JAR or enter URL with the module or specify Maven's groupId:artifactId:version. There is no problem with downloading of module: there is a problem with runtime running it. Questions: 1) Is there good way for substitution of your own ClassLoader for more dynamic management? Wicket doesn't manage class loaders. The web container (like Tomcat) deals with this. The only hook provided by Wicket is org.apache.wicket.protocol. http.WicketFilter#getClassLoader(). See org.apache.wicket.protocol.http. ReloadingWicketFilter#reloadingClassLoader. 2) Is there a way for restarting of wicket app without restarting a web-container? You may use WebApplication#initApplication() and #internalDestroy(). Also see what ReloadingWicketFilter does. 3) Related to p.1: any good experience with using this: https://github.com/kamranzafar/JCL ? IMO this should work to load extra jars dynamically. I didn't see anything about unloading though. 4) Any other suggetions how to make dynamically pluggable modules in wicket? Some people use OSGi (with PAX). I don't have much experience to be able to comment. Thanks, Ilya - Orienteer(http://orienteer.org) - open source Business Application Platform - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Pluggable architecture for wicket application
I know a Dutch company (or two) that use OSGi, I'm certain that one uses Wicket + OSGi: educator.eu. The other, luminis.eu, does a lot of work with OSGi, but might not use it in combination with Wicket. I only have second hand knowledge about the combination, and it's probably outdated. Maybe someone from those companies is listening here and cares to comment. Martijn On Mon, Nov 14, 2016 at 8:13 PM, Martin Grigorov wrote: > Hi, > > On Mon, Nov 14, 2016 at 3:58 AM, Илья Нарыжный wrote: > >> Hello, >> >> We really need advise from Apache Wicket experts. Please let me know if you >> have any ideas how to realize the following: >> >> We are working on Orienteer (http://orienteer.org) - open source Business >> Application Platform for rapid development. >> Orienteer already has pluggable architecture which allow to >> start/stop/restart modules and etc. Every module can bring different >> things: new webpages, REST, wicket components and etc. For example: >> https://github.com/OrienteerBAP/Orienteer/tree/master/orienteer-pivottable >> >> But there is plans to allow dynamically upload required new module (without >> recompiling whole WAR with new module). To upload person can literally >> upload JAR or enter URL with the module or specify Maven's >> groupId:artifactId:version. >> >> There is no problem with downloading of module: there is a problem with >> runtime running it. Questions: >> >> 1) Is there good way for substitution of your own ClassLoader for more >> dynamic management? >> > > Wicket doesn't manage class loaders. The web container (like Tomcat) deals > with this. > The only hook provided by Wicket is org.apache.wicket.protocol. > http.WicketFilter#getClassLoader(). See org.apache.wicket.protocol.http. > ReloadingWicketFilter#reloadingClassLoader. > > >> 2) Is there a way for restarting of wicket app without restarting a >> web-container? >> > > You may use WebApplication#initApplication() and #internalDestroy(). Also > see what ReloadingWicketFilter does. > > >> 3) Related to p.1: any good experience with using this: >> https://github.com/kamranzafar/JCL ? >> > > IMO this should work to load extra jars dynamically. I didn't see anything > about unloading though. > > >> 4) Any other suggetions how to make dynamically pluggable modules in >> wicket? >> > > Some people use OSGi (with PAX). I don't have much experience to be able to > comment. > > >> >> Thanks, >> >> Ilya >> >> - >> Orienteer(http://orienteer.org) - open source Business Application >> Platform >> -- Become a Wicket expert, learn from the best: http://wicketinaction.com - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Pluggable architecture for wicket application
Hi, On Mon, Nov 14, 2016 at 3:58 AM, Илья Нарыжный wrote: > Hello, > > We really need advise from Apache Wicket experts. Please let me know if you > have any ideas how to realize the following: > > We are working on Orienteer (http://orienteer.org) - open source Business > Application Platform for rapid development. > Orienteer already has pluggable architecture which allow to > start/stop/restart modules and etc. Every module can bring different > things: new webpages, REST, wicket components and etc. For example: > https://github.com/OrienteerBAP/Orienteer/tree/master/orienteer-pivottable > > But there is plans to allow dynamically upload required new module (without > recompiling whole WAR with new module). To upload person can literally > upload JAR or enter URL with the module or specify Maven's > groupId:artifactId:version. > > There is no problem with downloading of module: there is a problem with > runtime running it. Questions: > > 1) Is there good way for substitution of your own ClassLoader for more > dynamic management? > Wicket doesn't manage class loaders. The web container (like Tomcat) deals with this. The only hook provided by Wicket is org.apache.wicket.protocol. http.WicketFilter#getClassLoader(). See org.apache.wicket.protocol.http. ReloadingWicketFilter#reloadingClassLoader. > 2) Is there a way for restarting of wicket app without restarting a > web-container? > You may use WebApplication#initApplication() and #internalDestroy(). Also see what ReloadingWicketFilter does. > 3) Related to p.1: any good experience with using this: > https://github.com/kamranzafar/JCL ? > IMO this should work to load extra jars dynamically. I didn't see anything about unloading though. > 4) Any other suggetions how to make dynamically pluggable modules in > wicket? > Some people use OSGi (with PAX). I don't have much experience to be able to comment. > > Thanks, > > Ilya > > - > Orienteer(http://orienteer.org) - open source Business Application > Platform >
Pluggable architecture for wicket application
Hello, We really need advise from Apache Wicket experts. Please let me know if you have any ideas how to realize the following: We are working on Orienteer (http://orienteer.org) - open source Business Application Platform for rapid development. Orienteer already has pluggable architecture which allow to start/stop/restart modules and etc. Every module can bring different things: new webpages, REST, wicket components and etc. For example: https://github.com/OrienteerBAP/Orienteer/tree/master/orienteer-pivottable But there is plans to allow dynamically upload required new module (without recompiling whole WAR with new module). To upload person can literally upload JAR or enter URL with the module or specify Maven's groupId:artifactId:version. There is no problem with downloading of module: there is a problem with runtime running it. Questions: 1) Is there good way for substitution of your own ClassLoader for more dynamic management? 2) Is there a way for restarting of wicket app without restarting a web-container? 3) Related to p.1: any good experience with using this: https://github.com/kamranzafar/JCL ? 4) Any other suggetions how to make dynamically pluggable modules in wicket? Thanks, Ilya - Orienteer(http://orienteer.org) - open source Business Application Platform