Thanks for the detailed reply. Looking at HttpServiceServlet I can't help, but notice that the entire whiteboard seems to be anchored in a single ServletContext. Therefore it must multiplex access to this context to simulate multiple whiteboard web applications. This does not seem like a very easy/stable design to implement.
Would it be possible to introduce a service oriented solution along the lines of the Gemini Web web container adapter: http://git.eclipse.org/c/gemini.web/org.eclipse.gemini.web.gemini-web-container.git/tree/org.eclipse.gemini.web.core/src/main/java/org/eclipse/gemini/web/core/spi/ServletContainer.java Implementations of this adapter have to be able to programatically talk to a concrete web container instance to make it create ServletContexts. From my experience with Tomcat it is not very hard to make a ServletContext (i.e. a web app internal structure) entirely programatically without any web.xml etc. metadata. It is also pretty easy to boot Tomcat from a bundle. I imagine it will be even easier on Jetty. Combine this with the programmatic servlet/filter/listener creation in Servlet 3.0 and it seems like a compelling design. Basically the whiteboard will only have to bridge Servlet 3.0 with the OSGi service registry. Does such a (radical) redesign seem feasible? Regards On Fri, Oct 28, 2016 at 3:12 AM, Raymond Auge <raymond.a...@liferay.com> wrote: > The bundle you need is: > > http://download.eclipse.org/eclipse/updates/4.6/R-4.6- > 201606061100/plugins/org.eclipse.equinox.http.servlet_ > 1.3.0.v20160517-1559.jar > > I you are using PDE projects then you can just use this repository as > normal. > > IF you are using bndtools >=3.3 you can use this repository configuration: > > -plugin.Eclipse.Neon: \ > aQute.bnd.repository.p2.provider.P2Repository; \ > name = "Eclipse 4.6 (Neon)"; \ > url = "http://download.eclipse.org/ > eclipse/updates/4.6/R-4.6-201606061100/" > > In order to use this bundle with your own servlet container you must > create a bundle which will create an instance of > > org.eclipse.equinox.http.servlet.HttpServiceServlet > > That instance must provide access to a ServletContext of the real servlet > container, and from there the implementation will take over handling sub > servlet context's for you. > > Here's a real world implementation of this: > > https://github.com/liferay/liferay-portal/blob/master/ > modules/apps/static/portal-osgi-web/portal-osgi-web-wab- > extender/src/main/java/com/liferay/portal/osgi/web/wab/ > extender/internal/adapter/HttpAdapter.java > > Furthermore, I really dislike how this is implemented, It's a pretty > terrible API design. It would be great to make this service oriented. I'll > certainly appreciate any contributions to make it better. > > - Ray > > > On Wed, Oct 26, 2016 at 2:46 PM, Todor Boev <rinsv...@gmail.com> wrote: > >> Hello, >> >> I am looking for an implementation of the Http Whiteboard OSGi standard >> (Chapter 140 EEG spec). >> I also need to run it over Tomcat 8. >> Finally it is preferable that the whiteboard runs in "native mode" rather >> than via a bridge servlet. I.e. have Tomcat instantiate an actual >> ServletContext for every web app root as it does with WAR/WABs. >> >> Equinox supposedly has an Http whiteboard R6 implementation, but I am >> somewhat confused as to which bundles do I need to run to get it. >> >> Regards >> Todor >> >> _______________________________________________ >> equinox-dev mailing list >> equinox-dev@eclipse.org >> To change your delivery options, retrieve your password, or unsubscribe >> from this list, visit >> https://dev.eclipse.org/mailman/listinfo/equinox-dev >> > > > > -- > *Raymond Augé* <http://www.liferay.com/web/raymond.auge/profile> > (@rotty3000) > Senior Software Architect *Liferay, Inc.* <http://www.liferay.com> > (@Liferay) > Board Member & EEG Co-Chair, OSGi Alliance <http://osgi.org> > (@OSGiAlliance) > > _______________________________________________ > equinox-dev mailing list > equinox-dev@eclipse.org > To change your delivery options, retrieve your password, or unsubscribe > from this list, visit > https://dev.eclipse.org/mailman/listinfo/equinox-dev >
_______________________________________________ equinox-dev mailing list equinox-dev@eclipse.org To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/equinox-dev