Hi, great, I'm sure those details will help narrow it down :-)
regards, Achim 2017-03-16 19:59 GMT+01:00 Eben Stewart <[email protected]>: > I don't have a patch, but I added a bunch more detail in Jira ( > https://ops4j1.jira.com/browse/PAXWEB-1077) that I think greatly narrows > it down - I see what is going on that is causing the problem, but not > exactly sure what the best solution is. > > On Thursday, March 16, 2017 at 5:02:26 AM UTC-4, Achim Nierbeck wrote: >> >> Hi >> >> thanks for the details ... will look at it most likely around weekend. >> >> regards, Achim >> >> >> 2017-03-16 2:50 GMT+01:00 Eben Stewart <[email protected]>: >> >>> I'll add this to Jira, but I was trying to narrow this down even more.... >>> >>> In my own test code, I split it into 2 separate bundles - 1 containing >>> the ServletContextHelper, the other containing the Servlet, both using >>> DS/Whiteboard >>> >>> if I stop and start the servlet bundle only, I see this: >>> >>> g! stop 22 >>> [Gogo shell] DEBUG TestCoreServlet.coreServlet - BundleEvent STOPPING - >>> TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG TestCoreServlet.coreServlet - ServiceEvent >>> UNREGISTERING - [javax.servlet.Servlet] - TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.whi >>> teboard.internal.tracker.AbstractTracker - Service removed >>> [javax.servlet.Servlet] >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.war.internal.Activator - >>> Starting destruction process for bundle TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.war.internal.Activator - >>> Not an extended bundle or destruction of extension already finished for >>> TestCoreServlet.coreServlet. >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.war.internal.Activator - >>> Starting destruction process for bundle TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.war.internal.Activator - >>> Not an extended bundle or destruction of extension already finished for >>> TestCoreServlet.coreServlet. >>> [Gogo shell] DEBUG TestCoreServlet.coreServlet - BundleEvent STOPPED - >>> TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.war.internal.Activator - >>> Starting destruction process for bundle TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.war.internal.Activator - >>> Not an extended bundle or destruction of extension already finished for >>> TestCoreServlet.coreServlet. >>> g! start 22 >>> [Gogo shell] DEBUG TestCoreServlet.coreServlet - BundleEvent STARTING - >>> TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG TestCoreServlet.coreServlet - BundleEvent STARTED - >>> TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG TestCoreServlet.coreServlet - ServiceEvent REGISTERED >>> - [javax.servlet.Servlet] - TestCoreServlet.coreServlet >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.whi >>> teboard.internal.tracker.AbstractTracker - Service available >>> [javax.servlet.Servlet] >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.whi >>> teboard.internal.tracker.ServletTracker - Creating web element for >>> service 45 [javax.servlet.Servlet] (TestCore.Servlet.Example@9211a24). >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.whi >>> teboard.internal.WebApplication - de-registering 0 servlet filters >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.whi >>> teboard.internal.WebApplication - de-registering 0 welcomefilemappings >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.whi >>> teboard.internal.WebApplication - registering >>> weblement:ServletWebElement{mapping=DefaultServletMapping{ht >>> tpContextId=CustomContext,urlPatterns=[/web],initParams={}, >>> servlet=TestCore.Servlet.Example@9211a24, alias=null, >>> servletNameExample1}} >>> [Gogo shell] DEBUG org.ops4j.pax.web.service.internal.HttpServiceStarted >>> - Using context [ContextModel{id=org.ops4j.pax >>> .web.service.spi.model.ContextModel-2,name=context,httpConte >>> xt=org.ops4j.pax.web.extender.whiteboard.internal.WebApplica >>> tion$1@373185f1,contextParams={httpContext.shared=true, >>> webapp.context=context},virtualHosts={},connectors={}}] >>> [Gogo shell] DEBUG org.ops4j.pax.web.service.internal.ServletEventDispatcher >>> - Sending web event ServletEvent [replay=false, type=1, >>> bundle=21-TestCoreServlet.context, timestamp=1489628772443, alias=null, >>> servletName=Example1, urlParameter=[Ljava.lang.String;@47984949, >>> servletClass=TestCore.Servlet.Example], httpContext=org.ops4j.pax.web. >>> extender.whiteboard.internal.WebApplication$1@373185f1] for bundle >>> TestCoreServlet.context >>> [ServletEventDispatcher: 3] DEBUG org.ops4j.pax.web.pax-web-jetty-bundle >>> - org/osgi/service/web/DEPLOYING >>> [ServletEventDispatcher: 2] DEBUG org.ops4j.pax.web.pax-web-runtime - >>> org/osgi/service/web/DEPLOYING >>> [Gogo shell] DEBUG org.ops4j.pax.web.service.jetty.internal.JettyServerImpl >>> - Adding servlet [ServletModel{id=org.ops4j.pax >>> .web.service.spi.model.ServletModel-4,name=Example1,urlPatte >>> rns=[/web],alias=null,servlet=TestCore.Servlet.Example@ >>> 9211a24,initParams={},context=ContextModel{id=org.ops4j.pax. >>> web.service.spi.model.ContextModel-2,name=context, >>> httpContext=org.ops4j.pax.web.extender.whiteboard.internal. >>> WebApplication$1@373185f1,contextParams={httpContext.shared=true, >>> webapp.context=context},virtualHosts={},connectors={}}}] >>> [Gogo shell] DEBUG org.eclipse.jetty.util.component.ContainerLifeCycle >>> - org.ops4j.pax.web.service.jetty.internal.HttpServiceServletH >>> andler@6e9175d8 added {Example1@77578027==TestCore.S >>> ervlet.Example,-1,true,UNMANAGED} >>> [Gogo shell] DEBUG org.eclipse.jetty.util.component.ContainerLifeCycle >>> - org.ops4j.pax.web.service.jetty.internal.HttpServiceServletH >>> andler@6e9175d8 added {[/web]=>Example1,POJO} >>> [Gogo shell] DEBUG org.ops4j.pax.web.service.internal.ServletEventDispatcher >>> - Sending web event ServletEvent [replay=false, type=5, >>> bundle=21-TestCoreServlet.context, timestamp=1489628772446, alias=null, >>> servletName=Example1, urlParameter=[Ljava.lang.String;@53e3ff33, >>> servletClass=TestCore.Servlet.Example], httpContext=org.ops4j.pax.web. >>> extender.whiteboard.internal.WebApplication$1@373185f1] for bundle >>> TestCoreServlet.context >>> [ServletEventDispatcher: 1] DEBUG org.ops4j.pax.web.pax-web-jetty-bundle >>> - org/osgi/service/web/FAILED >>> [ServletEventDispatcher: 3] DEBUG org.ops4j.pax.web.pax-web-runtime - >>> org/osgi/service/web/FAILED >>> [Gogo shell] ERROR org.ops4j.pax.web.extender.whi >>> teboard.internal.WebApplication - Registration skipped for >>> [ServletWebElement{mapping=DefaultServletMapping{httpContext >>> Id=CustomContext,urlPatterns=[/web],initParams={},servlet= >>> TestCore.Servlet.Example@9211a24, alias=null, servletNameExample1}}] >>> due to error during registration >>> java.lang.IllegalStateException: Multiple servlets map to path: /web: >>> Example1,Example1 >>> >>> It looks like the WebElement is never destroyed and removed when >>> stopping the Servlet Bundle - what makes this worse is that the WebElement >>> *is >>> still accessible* via the original web path >>> >>> if I just stop/start the Context bundle, this is where the original >>> warning is coming from, after which, the context is no longer available: >>> >>> g! start 21 >>> [Gogo shell] DEBUG TestCoreServlet.context - BundleEvent STARTING - >>> TestCoreServlet.context >>> [Gogo shell] DEBUG TestCoreServlet.context - BundleEvent STARTED - >>> TestCoreServlet.context >>> [Gogo shell] DEBUG TestCoreServlet.context - ServiceEvent REGISTERED - >>> [org.osgi.service.http.context.ServletContextHelper] - >>> TestCoreServlet.context >>> [Gogo shell] DEBUG org.ops4j.pax.web.extender.whi >>> teboard.internal.tracker.AbstractTracker - Service available >>> [org.osgi.service.http.context.ServletContextHelper] >>> [Gogo shell] DEBUG org.ops4j.pax.web.service.internal.HttpServiceProxy >>> - Unregistering servlet [TestCore.Servlet.Example@66d3eec0] >>> [Gogo shell] WARN org.ops4j.pax.web.service.internal.HttpServiceStopped >>> - Http service has already been stopped >>> [Gogo shell] WARN org.ops4j.pax.web.service.internal.HttpServiceStopped >>> - Http service has already been stopped >>> [Gogo shell] DEBUG org.ops4j.pax.web.service.internal.HttpServiceProxy >>> - Setting context paramters [{httpContext.shared=true, >>> webapp.context=context}] for http context [org.ops4j.pax.web.extender.wh >>> iteboard.internal.WebApplication$1@7cd8fcb5] >>> [Gogo shell] WARN org.ops4j.pax.web.service.internal.HttpServiceStopped >>> - Http service has already been stopped >>> [Gogo shell] WARN org.ops4j.pax.web.service.internal.HttpServiceStopped >>> - Http service has already been stopped >>> >>> >>> >>> >>> On Wednesday, March 15, 2017 at 10:06:07 AM UTC-4, Eben Stewart wrote: >>>> >>>> I'd certainly like get to know the Pax code base better , but right now >>>> I'm not even sure where to look :D >>>> >>>> On Wednesday, March 15, 2017 at 3:30:36 AM UTC-4, Achim Nierbeck wrote: >>>>> >>>>> Thanks for the jira ... will see when I have some time, >>>>> through we really love contributions ;) >>>>> >>>>> regards, Achim >>>>> >>>>> >>>>> 2017-03-15 1:19 GMT+01:00 Eben Stewart <[email protected]>: >>>>> >>>>>> https://ops4j1.jira.com/browse/PAXWEB-1077 >>>>>> >>>>>> >>>>>> On Tuesday, March 14, 2017 at 8:10:16 PM UTC-4, Eben Stewart wrote: >>>>>>> >>>>>>> same thing - I'll open a Jira for it. >>>>>>> >>>>>>> Makes development really challenging every time you make a change to >>>>>>> have to restart the whole framework :D >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Tuesday, March 14, 2017 at 6:53:00 PM UTC-4, Achim Nierbeck wrote: >>>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> in fact there is :-) >>>>>>>> for a maven project it's >>>>>>>> >>>>>>>> <!-- OPS4J SNAPSHOT repository --> >>>>>>>> <repository> >>>>>>>> <id>ops4j.sonatype.snapshots.deploy</id> >>>>>>>> <name>OPS4J snapshot repository</name> >>>>>>>> <url>https://oss.sonatype.org/ >>>>>>>> content/repositories/ops4j-snapshots/</url> >>>>>>>> <releases> >>>>>>>> <enabled>false</enabled> >>>>>>>> </releases> >>>>>>>> <snapshots> >>>>>>>> <enabled>true</enabled> >>>>>>>> </snapshots> >>>>>>>> </repository> >>>>>>>> >>>>>>>> regards, Achim >>>>>>>> >>>>>>>> 2017-03-14 21:53 GMT+01:00 Eben Stewart <[email protected]>: >>>>>>>> >>>>>>>>> thanks :) >>>>>>>>> >>>>>>>>> tested and recreated with 6.0.3-SNAPSHOT bundles >>>>>>>>> >>>>>>>>> However, I am getting build error for pax-web-jetty-bundle (all >>>>>>>>> other artifacts built fine from a fresh git clone), so I can't be >>>>>>>>> sure if >>>>>>>>> the 6.0.2 version of that is valid to test with. Is there a compiled >>>>>>>>> version of pax-web-jetty-bundle artifact available somewhere? >>>>>>>>> >>>>>>>>> I'll make sure to backtrack and do a fresh install of Karaf to get >>>>>>>>> steps to recreate for Jira purposes >>>>>>>>> >>>>>>>>> On Tuesday, March 14, 2017 at 10:26:34 AM UTC-4, Achim Nierbeck >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> You should have received an invitation for jira. >>>>>>>>>> Welcome aboard. >>>>>>>>>> >>>>>>>>>> regards, Achim >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> 2017-03-14 15:19 GMT+01:00 Eben Stewart <[email protected]>: >>>>>>>>>> >>>>>>>>>>> Will do. Do I need to make a separate request for Jira access? >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> -- >>>>>>>>>>> ------------------ >>>>>>>>>>> OPS4J - http://www.ops4j.org - [email protected] >>>>>>>>>>> >>>>>>>>>>> --- >>>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>>> Google Groups "OPS4J" group. >>>>>>>>>>> To unsubscribe from this group and stop receiving emails from >>>>>>>>>>> it, send an email to [email protected]. >>>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> >>>>>>>>>> Apache Member >>>>>>>>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC >>>>>>>>>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> >>>>>>>>>> Committer & Project Lead >>>>>>>>>> blog <http://notizblog.nierbeck.de/> >>>>>>>>>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> >>>>>>>>>> >>>>>>>>>> Software Architect / Project Manager / Scrum Master >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>> -- >>>>>>>>> ------------------ >>>>>>>>> OPS4J - http://www.ops4j.org - [email protected] >>>>>>>>> >>>>>>>>> --- >>>>>>>>> You received this message because you are subscribed to the Google >>>>>>>>> Groups "OPS4J" group. >>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>> send an email to [email protected]. >>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> Apache Member >>>>>>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC >>>>>>>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> >>>>>>>> Committer & Project Lead >>>>>>>> blog <http://notizblog.nierbeck.de/> >>>>>>>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> >>>>>>>> >>>>>>>> Software Architect / Project Manager / Scrum Master >>>>>>>> >>>>>>>> -- >>>>>> -- >>>>>> ------------------ >>>>>> OPS4J - http://www.ops4j.org - [email protected] >>>>>> >>>>>> --- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "OPS4J" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to [email protected]. >>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> Apache Member >>>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC >>>>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> >>>>> Committer & Project Lead >>>>> blog <http://notizblog.nierbeck.de/> >>>>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> >>>>> >>>>> Software Architect / Project Manager / Scrum Master >>>>> >>>>> -- >>> -- >>> ------------------ >>> OPS4J - http://www.ops4j.org - [email protected] >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "OPS4J" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> >> -- >> >> Apache Member >> Apache Karaf <http://karaf.apache.org/> Committer & PMC >> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer >> & Project Lead >> blog <http://notizblog.nierbeck.de/> >> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> >> >> Software Architect / Project Manager / Scrum Master >> >> -- > -- > ------------------ > OPS4J - http://www.ops4j.org - [email protected] > > --- > You received this message because you are subscribed to the Google Groups > "OPS4J" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- Apache Member Apache Karaf <http://karaf.apache.org/> Committer & PMC OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & Project Lead blog <http://notizblog.nierbeck.de/> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> Software Architect / Project Manager / Scrum Master -- -- ------------------ OPS4J - http://www.ops4j.org - [email protected] --- You received this message because you are subscribed to the Google Groups "OPS4J" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
