On 11/11/10 1:44 PM, Bengt Rodehav wrote:
Richard, I've read your investigation in FELIX-1032. Very good work finding that bug in the JRE. Do you know if this bug has been reported or if it might already be fixed? If not, then I guess the best we can do is to report problems like this to those who use the ZipFile class in a way that might cause problems. In this case it seems like the problem lies in Jetty. Have you notified them about this problem?
I never reported the problem to anyone other than Equinox, because they had an issue open on this too. It should be pretty easy to see if it was fixed, I think. I tried to search Java bugzilla, but didn't find anything quickly.
Truthfully, I'm still a little confused about this since the problem disappears when switching to Equinox. Also, in pax-web 0.7.2 it works while I get the error in 0.7.3. Don't know if they really use different version of Jetty - I think not.
Yeah, that doesn't make sense to me unless they are caching some values or otherwise hiding the error somehow or holding onto some reference that we don't.
Meanwhile I'll try to see if Felix 3.0.6 works without problems. In my configuration I tend to get this problem when I click on the iPOJO tab in the Webconsole. I'll see if I can cook down the problem in a simpler test case. Currently I use Karaf 2.1.0 with Felix 3.0.2, Webconsole 3.1.2 and the iPOJO Webconsole plugin 1.4.4.
I'd be willing to look into it again if it seemed like there was something different going on, but so far it looks the same.
-> richard
/Bengt 2010/11/11 Richard S. Hall<[email protected]>On 11/11/10 11:55, Guillaume Nodet wrote:Yeah, that seems tricky issue here. I haven't had any time to actually investigate. I've seen Richard came to the conclusion that this was a bug in jetty or the jvm iirc.It was definitely a JRE bug. They were inserted an invalid inflater back into their infater pool. This appears to be the same issue looking at the original stack trace below. This is not a Felix issue. Perhaps there is some workaround we could devise, but I'm not sure what. -> richard For felix 3.0.6, i suppose there has been some changes in the bootloader delegation mechanism, but not sure when those have been introduced. Maybe checking with karaf trunk which uses pax-web 0.8.0 and felix 3.0.6 to make sure that this does not happen anymore. For karaf 2.1.1 release under vote, i suppose we should add a note on the release notes at least or switch back to 0.7.2 in 2.1.2 if needed. Not sure really what's the best way yet, but this should be discussed on karaf dev list rather than here. On Thu, Nov 11, 2010 at 17:29, Bengt Rodehav<[email protected]> wrote:Guillaume, I switched back to pax-web 0.7.3 and verified that I get the NullPointerException. I then switched to Equinox - it works with no problems. I use the Equinox version that comes with Karaf 2.1.0. I then tried to switch from Felix 3.0.2 (which comes with Karaf 2.1.0) to Felix 3.0.6 but I haven't managed to do that successfully. All I did was to change the karaf.framework.felix in Karaf's config.properties to Felix 3.0.6 which I also downloaded and put in the right place under "system". Karaf starts with no problems, however, I cannot login from the Webconsole (I use the default karaf/karaf). In the log I get: 2010-11-11 17:17:53,052 | ERROR | /console/bundles |WebConsoleSecurityProvider | .webconsole.JaasSecurityProvider 75 | General Security Exceptionjavax.security.auth.login.LoginException: det går inte att hittaLoginModule-klassen: org.apache.karaf.jaas.boot.ProxyLoginModule not found by org.apache.felix.webconsole [42]atjavax.security.auth.login.LoginContext.invoke(LoginContext.java:808)[:1.6.0_07]atjavax.security.auth.login.LoginContext.access$000(LoginContext.java:186)[:1.6.0_07]atjavax.security.auth.login.LoginContext$4.run(LoginContext.java:683)[:1.6.0_07]at java.security.AccessController.doPrivileged(Native Method)[:1.6.0_07] atjavax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)[:1.6.0_07]atjavax.security.auth.login.LoginContext.login(LoginContext.java:579)[:1.6.0_07]atorg.apache.karaf.webconsole.JaasSecurityProvider.authenticate(JaasSecurityProvider.java:66)[42:org.apache.felix.webconsole:3.1.2]atorg.apache.felix.webconsole.internal.servlet.OsgiManager$SecurityProvider.authenticate(OsgiManager.java:995)[42:org.apache.felix.webconsole:3.1.2]atorg.apache.felix.webconsole.internal.servlet.OsgiManagerHttpContext.handleSecurity(OsgiManagerHttpContext.java:123)[42:org.apache.felix.webconsole:3.1.2]atorg.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.handle(HttpServiceServletHandler.java:62)[39:org.ops4j.pax.web.pax-web-jetty:0.7.3]atorg.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.ops4j.pax.web.service.jetty.internal.HttpServiceContext.handle(HttpServiceContext.java:111)[39:org.ops4j.pax.web.pax-web-jetty:0.7.3]atorg.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:68)[39:org.ops4j.pax.web.pax-web-jetty:0.7.3]atorg.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.jetty.Server.handle(Server.java:322)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]atorg.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)[35:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]What else do I have to do to switch to Felix 3.0.6? So, it seems like Equinox does not have any problems with pax-web 0.7.3. That certainly indicates some problem in Felix. However, Richard S Hall investigated this in FELIX-1032 and came to the conclusion that it's not a Felix bug. What do you think? /Bengt 2010/11/11 Bengt Rodehav<[email protected]> I'll give Equinox and Felix 3.0.6 a try.Thanks for the tip, /Bengt 2010/11/10 Guillaume Nodet<[email protected]> Have you tried to reproduce the issue using Equinox ? Also maybeupgrading to Felix Framework 3.0.6 ? I've also seen those issues but haven't had any time to investigate so far. On Wed, Nov 10, 2010 at 18:50, Bengt Rodehav<[email protected]> wrote:I get the same problem. I use Karaf 2.1 which relies on pax-web 0.7.3. I've tried pax-web 0.8.0 which was just released but it doesn't work either. I seem to get rid of this problem when reverting to pax-web 0.7.2 like you suggested to Irad. However I had to patch the feature file that comes with Karaf 2.1 to do this. Does anyone know if someone is working to fix this? Is it reported? I'mnotsure if it should be reported to the Jetty people, Ops4j or perhapsFelix orKaraf. I would really like to upgrade to pax-web 0.8.0 (with Jetty 7) but rightnowit seems like I'm stuck at 0.7.2... Does anyone know if a fix is in the works somewhere? /Bengt 2010/11/2 Allen Lau<[email protected]> There is a problem with newer Jetty versions running inside of Felix that causes this problem. Don't remember the thread that pinpoints the exact issue. Reverting back to PAX-WEB 0.7.2 solves the issue. Give thata try. Allen On Mon, Nov 1, 2010 at 9:57 AM, Irad Dor<[email protected]> wrote: Hi,Was wondering if anyone can help. I am getting the below set of behaviours after trying to install or uninstall a feature with Karaf 2.1.0 web console on a spawned server instance (not the main karaf server). 1. I try to install / uninstall a feature 2. At first The web console does not respond and seems stuck 3. If I wait with no refresh, I sometimes see an empty features screen (Feature information: 0 features in total - all 0 features active.) 4. But after a refresh the feature seems installed. 5. Sometimes the web console seems to have completely died and I cannot access any of the tabs 6. Sometimes I get the following AJAX Error pop-up screen: a. The request failed: b. HTTP ERROR 405 c. Problem accessing /system/console/features. Reason: d. HTTP method POST is not supported by this URL e. ________________________________ f. Powered by Jetty:// A section of the karaf log is below with messages that are generated when this happens. Can you help? Thanks, Irad. 16:38:42,814 | WARN | qtp-1605870897-5 | jetty | service.jetty.internal.JCLLogger 115 | 62 - org.ops4j.pax.web. pax-web-jetty - 0.7.3 | /system/console/res/karaf/ui/webconsole.css java.lang.NullPointerException: Inflater has been closed at java.util.zip.Inflater.ensureOpen(Inflater.java:364)[:1.6.0_21] at java.util.zip.Inflater.getBytesWritten(Inflater.java:317)[:1.6.0_21] at java.util.zip.ZipFile$1.available(ZipFile.java:243)[:1.6.0_21] at org.apache.felix.framework.URLHandlersBundleURLConnection.connect(URLHandlersBundleURLConnection.java:126)[org.apache.felix.framework-3.0.2.jar:] at org.apache.felix.framework.URLHandlersBundleURLConnection.getInputStream(URLHandlersBundleURLConnection.java:135)[org.apache.felix.framework-3.0.2.jar:] at org.mortbay.resource.URLResource.exists(URLResource.java:101)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.ops4j.pax.web.service.jetty.internal.ResourceServlet.doGet(ResourceServlet.java:82)[62:org.ops4j.pax.web.pax-web-jetty:0.7.3]at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)[57:org.apache.geronimo.specs.geronimo-servlet_2.5_spec:1.1.2]at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)[57:org.apache.geronimo.specs.geronimo-servlet_2.5_spec:1.1.2]at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.handle(HttpServiceServletHandler.java:64)[62:org.ops4j.pax.web.pax-web-jetty:0.7.3] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.handle(HttpServiceContext.java:111)[62:org.ops4j.pax.web.pax-web-jetty:0.7.3] at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:68)[62:org.ops4j.pax.web.pax-web-jetty:0.7.3] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.jetty.Server.handle(Server.java:326)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2]at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2] at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)[58:org.apache.servicemix.bundles.jetty-bundle:6.1.22.2] 16:38:46,079 | INFO | qtp-1605870897-0 | FeaturesServiceImpl | res.internal.FeaturesServiceImpl 273 | 14 - org.apache.karaf.f eatures.core - 2.1.0 | Bundles to refresh:org.apache.felix.webconsole(79)16:38:46,079 | INFO | qtp-1605870897-0 | FeaturesServiceImpl | res.internal.FeaturesServiceImpl 283 | 14 - org.apache.karaf.f eatures.core - 2.1.0 | Refreshing bundles:org.apache.felix.webconsole(79)16:38:46,080 | INFO | elixPackageAdmin | HttpServiceFactoryImpl | .internal.HttpServiceFactoryImpl 40 | 61 - org.ops4j.pax.web. pax-web-runtime - 0.7.3 | Unbinding bundle:[org.apache.felix.webconsole[79]]16:38:46,088 | INFO | elixPackageAdmin | HttpServiceFactoryImpl | .internal.HttpServiceFactoryImpl 33 | 61 - org.ops4j.pax.web. pax-web-runtime - 0.7.3 | Binding bundle:[org.apache.felix.webconsole[79]] to http service16:38:46,089 | ERROR | elixPackageAdmin | webconsole | ? ? | 79 - org.apache.felix.w ebconsole - 1.2.10 | bindHttpService: Problem setting up org.osgi.service.http.NamespaceException: alias is already in use in this or another context at org.ops4j.pax.web.service.spi.model.ServerModel.addServletModel(ServerModel.java:120)[60:org.ops4j.pax.web.pax-web-spi:0.7.3]at org.ops4j.pax.web.service.internal.HttpServiceStarted.registerServlet(HttpServiceStarted.java:146)[61:org.ops4j.pax.web.pax-web-runtime:0.7.3] at org.ops4j.pax.web.service.internal.HttpServiceProxy.registerServlet(HttpServiceProxy.java:54)[61:org.ops4j.pax.web.pax-web-runtime:0.7.3] at org.apache.felix.webconsole.internal.servlet.OsgiManager.bindHttpService(OsgiManager.java:577)[79:org.apache.felix.webconsole:1.2.10] at org.apache.felix.webconsole.internal.servlet.OsgiManager$HttpServiceTracker.addingService(OsgiManager.java:420)[79:org.apache.felix.webconsole:1.2.10] at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)[karaf.jar:]at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)[karaf.jar:]at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)[karaf.jar:]at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)[karaf.jar:]at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)[karaf.jar:]at org.apache.felix.webconsole.internal.servlet.OsgiManager.<init>(OsgiManager.java:175)[79:org.apache.felix.webconsole:1.2.10]at org.apache.felix.webconsole.internal.OsgiManagerActivator.start(OsgiManagerActivator.java:35)[79:org.apache.felix.webconsole:1.2.10] at org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:633)[org.apache.felix.framework-3.0.2.jar:]at org.apache.felix.framework.Felix.activateBundle(Felix.java:1817)[org.apache.felix.framework-3.0.2.jar:]at org.apache.felix.framework.Felix.startBundle(Felix.java:1734)[org.apache.felix.framework-3.0.2.jar:]at org.apache.felix.framework.Felix$RefreshHelper.restart(Felix.java:4469)[org.apache.felix.framework-3.0.2.jar:]at org.apache.felix.framework.Felix.refreshPackages(Felix.java:3554)[org.apache.felix.framework-3.0.2.jar:]at org.apache.felix.framework.PackageAdminImpl.run(PackageAdminImpl.java:336)[org.apache.felix.framework-3.0.2.jar:]at java.lang.Thread.run(Thread.java:619)[:1.6.0_21] Irad Dor Edge CI +44 77 6677 4020 +44 20 7193 9279-- Cheers, Guillaume Nodet ------------------------ Blog: http://gnodet.blogspot.com/ ------------------------ Open Source SOA http://fusesource.com --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]--------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
--------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

