Return-Path: X-Original-To: apmail-felix-dev-archive@www.apache.org Delivered-To: apmail-felix-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EAD73182AC for ; Tue, 25 Aug 2015 13:21:19 +0000 (UTC) Received: (qmail 87882 invoked by uid 500); 25 Aug 2015 13:21:19 -0000 Delivered-To: apmail-felix-dev-archive@felix.apache.org Received: (qmail 87817 invoked by uid 500); 25 Aug 2015 13:21:19 -0000 Mailing-List: contact dev-help@felix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@felix.apache.org Delivered-To: mailing list dev@felix.apache.org Received: (qmail 87799 invoked by uid 99); 25 Aug 2015 13:21:19 -0000 Received: from Unknown (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 25 Aug 2015 13:21:19 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 0C407EDBD2 for ; Tue, 25 Aug 2015 13:21:19 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.121 X-Spam-Level: X-Spam-Status: No, score=-0.121 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-us-west.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id oS6squAROCVq for ; Tue, 25 Aug 2015 13:21:17 +0000 (UTC) Received: from mail-la0-f51.google.com (mail-la0-f51.google.com [209.85.215.51]) by mx1-us-west.apache.org (ASF Mail Server at mx1-us-west.apache.org) with ESMTPS id 02EA020382 for ; Tue, 25 Aug 2015 13:21:17 +0000 (UTC) Received: by laba3 with SMTP id a3so98149930lab.1 for ; Tue, 25 Aug 2015 06:21:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=ZTxpNK8G3IRgD7af8ElkcAEjPhVae+Ar/bISSqwEtP4=; b=xQIjEIollxdoFJRzlNSmRSlTa9Q5hwwux4hlyaZ9SBrW/QZI+J4aqHbvDbJ7g9L3HV nr9kBag/2Hh+wN9QcjZILNARfq8Y2Afo/5RZDmHSMeeIHY8WXKohVYo0DeGiHa+PZ9lN EOLJ78F2hLTWzMCTAgFmlJxJNxaCAvOBAJiFaw0apBnTPPgAYsrMaT2JD7PU8YbD3fTq REsPwse+6ud3o64s1dg2jrcVFKqP7K4QydROY9jw+JtGJLfjeJ+Bjz3NWNEFKeO116uz l/JXUCxSuLA2ywvIpdIDIyBx6epH91GKdatBJODdic426m4J8hsgCyDGABKew03bIAe0 7F0w== X-Received: by 10.152.219.3 with SMTP id pk3mr25597291lac.114.1440508875465; Tue, 25 Aug 2015 06:21:15 -0700 (PDT) MIME-Version: 1.0 Received: by 10.112.9.229 with HTTP; Tue, 25 Aug 2015 06:20:55 -0700 (PDT) In-Reply-To: References: From: David Bosschaert Date: Tue, 25 Aug 2015 14:20:55 +0100 Message-ID: Subject: Re: Releasing the org.apache.felix.threaddump To: "dev@felix.apache.org" Content-Type: text/plain; charset=UTF-8 Ok - I understand it now. Inventory printer has this in its manifest: DynamicImport-Package: javax.servlet, javax.servlet.http This explains why it resolved in the first place. I guess I don't understand why these are imported via DI-P and not via normal imports, but that's not an issue with threaddump. Thanks Simo, I'll play a bit more with it... Cheers, David On 25 August 2015 at 13:55, Simone Tripodi wrote: > Hi again, David! > > just a small hint: I suggest you to test the bundle inside the WebConsole > also to see the service working and see the produced output... would it > help? > TIA, all the best! > -Simo- > > > http://people.apache.org/~simonetripodi/ > http://twitter.com/simonetripodi > > On Tue, Aug 25, 2015 at 2:49 PM, Simone Tripodi > wrote: > >> Hi David! >> Thanks a lot for taking care of it, much more than appreciated! :) >> The javax.servlet APIs are required by the InventoryPrinter APIs, it is a >> transitive dependency (in Maven therms :P) >> HTH, please get back to me if/when needed! >> All the best, >> -Simo- >> >> >> http://people.apache.org/~simonetripodi/ >> http://twitter.com/simonetripodi >> >> On Tue, Aug 25, 2015 at 12:55 PM, David Bosschaert < >> david.bosschaert@gmail.com> wrote: >> >>> Hi Simo, >>> >>> Just tried the threaddump bundle (with it's dependency 'inventory' >>> 1.0.4) and it gives me an exception (see below), which seems to come >>> from its activator start() method. I'm not sure what it does, but it >>> looks like something is missing an import-package for the >>> javax.servlet APIs somewhere... >>> >>> Cheers, >>> >>> David >>> >>> Here's what I'm getting: >>> >>> g! lb >>> START LEVEL 1 >>> ID|State |Level|Name >>> 0|Active | 0|System Bundle (5.2.0) >>> 1|Active | 1|Apache Felix Bundle Repository (2.0.4) >>> 2|Active | 1|Apache Felix Gogo Command (0.14.0) >>> 3|Active | 1|Apache Felix Gogo Runtime (0.16.2) >>> 4|Active | 1|Apache Felix Gogo Shell (0.10.0) >>> 5|Active | 1|Apache Felix Inventory (1.0.4) >>> 6|Installed | 1|Apache Felix Thread Dump (0.0.1.SNAPSHOT) >>> g! start 6 >>> ERROR: Bundle org.apache.felix.inventory [5] EventDispatcher: Error >>> during dispatch. (java.lang.NoClassDefFoundError: >>> javax/servlet/http/HttpServlet) >>> java.lang.NoClassDefFoundError: javax/servlet/http/HttpServlet >>> at java.lang.ClassLoader.defineClass1(Native Method) >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:760) >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2350) >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2134) >>> at >>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1526) >>> at >>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79) >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1998) >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) >>> at java.lang.ClassLoader.defineClass1(Native Method) >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:760) >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2350) >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2134) >>> at >>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1526) >>> at >>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79) >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1998) >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) >>> at >>> org.apache.felix.inventory.impl.InventoryPrinterAdapter.registerConsole(InventoryPrinterAdapter.java:75) >>> at >>> org.apache.felix.inventory.impl.InventoryPrinterManagerImpl.addService(InventoryPrinterManagerImpl.java:208) >>> at >>> org.apache.felix.inventory.impl.InventoryPrinterManagerImpl.addingService(InventoryPrinterManagerImpl.java:128) >>> at >>> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) >>> at >>> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) >>> at >>> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) >>> at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) >>> at >>> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901) >>> at >>> org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:987) >>> at >>> org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:838) >>> at >>> org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:545) >>> at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4560) >>> at org.apache.felix.framework.Felix.registerService(Felix.java:3542) >>> at >>> org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:348) >>> at >>> org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:322) >>> at >>> org.apache.felix.threaddump.internal.ThreadDumpActivator.start(ThreadDumpActivator.java:60) >>> at >>> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:697) >>> at org.apache.felix.framework.Felix.activateBundle(Felix.java:2220) >>> at org.apache.felix.framework.Felix.startBundle(Felix.java:2138) >>> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:977) >>> at org.apache.felix.gogo.command.Basic.start(Basic.java:729) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:483) >>> at org.apache.felix.gogo.runtime.Reflective.invoke(Reflective.java:137) >>> at >>> org.apache.felix.gogo.runtime.CommandProxy.execute(CommandProxy.java:82) >>> at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480) >>> at >>> org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406) >>> at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108) >>> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182) >>> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119) >>> at >>> org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94) >>> at org.apache.felix.gogo.shell.Console.run(Console.java:62) >>> at org.apache.felix.gogo.shell.Shell.console(Shell.java:203) >>> at org.apache.felix.gogo.shell.Shell.gosh(Shell.java:128) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:483) >>> at org.apache.felix.gogo.runtime.Reflective.invoke(Reflective.java:137) >>> at >>> org.apache.felix.gogo.runtime.CommandProxy.execute(CommandProxy.java:82) >>> at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480) >>> at >>> org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406) >>> at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108) >>> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182) >>> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119) >>> at >>> org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94) >>> at org.apache.felix.gogo.shell.Activator.run(Activator.java:75) >>> at java.lang.Thread.run(Thread.java:745) >>> Caused by: java.lang.ClassNotFoundException: >>> javax.servlet.http.HttpServlet not found by org.apache.felix.inventory >>> [5] >>> at >>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1558) >>> at >>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79) >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1998) >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) >>> ... 66 more >>> >>> On 25 August 2015 at 11:14, David Bosschaert >>> wrote: >>> > Hi Simo, >>> > >>> > I have never used it but I can give it a go and start the release >>> sometime soon. >>> > >>> > Cheers, >>> > >>> > David >>> > >>> > On 25 August 2015 at 10:43, Simone Tripodi >>> wrote: >>> >> Hi all! :) >>> >> >>> >> the org.apache.felix.threaddump[1], contributed to FELIX-3339, >>> produces a >>> >> valid output which is very useful to analysts because it can be read by >>> >> common used tools, such as TDA... >>> >> Since the issue is marked as resolved on 20 Jun 13 and the bundle has >>> never >>> >> been released, would it be possible one of you committers releases it? >>> >> Any help would be very appreciate, many thanks in advance, all the >>> best! >>> >> -Simo >>> >> >>> >> [1] https://svn.apache.org/repos/asf/felix/trunk/threaddump >>> >> >>> >> http://people.apache.org/~simonetripodi/ >>> >> http://twitter.com/simonetripodi >>> >> >>