On 10/7/10 8:46, Martin Ždila wrote:
Hello

I am using org.eclipse.jetty.jmx bundle (from
http://download.eclipse.org/jetty/stable-7/dist/jetty-distribution-7.1.6.v20100715.tar.gz).
Since the Felix Framework 3.0.3 (and 3.0.4 too) I am getting
java.lang.ClassNotFoundException exceptions, for example:

java.lang.ClassNotFoundException:
org.eclipse.jetty.util.component.jmx.AbstractLifeCycleMBean not found
by org.eclipse.jetty.jmx [42]

Bundle 42 (org.eclipse.jetty.jmx) is containing that class. Bundle's
Import-Pakage header is
javax.management,javax.management.modelmbean,javax.management.remote,org.eclipse.jetty.deploy.jmx;version="[7.1,8)",org.eclipse.jetty.jmx;version="[7.1,8)",org.eclipse.jetty.server;version="[7.1,8)",org.eclipse.jetty.server.handler;version="[7.1,8)",org.eclipse.jetty.server.handler.jmx;version="[7.1,8)",org.eclipse.jetty.server.jmx;version="[7.1,8)",org.eclipse.jetty.server.nio.jmx;version="[7.1,8)",org.eclipse.jetty.server.session.jmx;version="[7.1,8)",org.eclipse.jetty.servlet;version="[7.1,8)",org.eclipse.jetty.servlet.jmx;version="[7.1,8)",org.eclipse.jetty.servlets.jmx;version="[7.1,8)",org.eclipse.jetty.util;version="[7.1,8)",org.eclipse.jetty.util.component;version="[7.1,8)",org.eclipse.jetty.util.component.jmx;version="[7.1,8)",org.eclipse.jetty.util.log;version="[7.1,8)",org.eclipse.jetty.util.log.jmx;version="[7.1,8)",org.eclipse.jetty.util.resource;version="[7.1,8)",org.eclipse.jetty.util.thread;version="[7.1,8)",org.eclipse.jetty.util.thread.jmx;version="[7.1,8)",org.eclipse.jetty.webapp;version="[7.1,8)",org.eclipse.jetty.webapp.jmx;version="[7.1,8)"

If I do inspect package requirement 42 I get:

org.eclipse.jetty.jmx [42] imports packages:
--------------------------------------------
javax.management; version=0.0.0.1_006_JavaSE ->  org.apache.felix.framework [0]
javax.management.modelmbean; version=0.0.0.1_006_JavaSE ->
org.apache.felix.framework [0]
javax.management.remote; version=0.0.0.1_006_JavaSE ->
org.apache.felix.framework [0]
org.eclipse.jetty.server; version=7.1.6.v20100715 ->
org.eclipse.jetty.server [44]
org.eclipse.jetty.server.handler; version=7.1.6.v20100715 ->
org.eclipse.jetty.server [44]
org.eclipse.jetty.servlet; version=7.1.6.v20100715 ->
org.eclipse.jetty.servlet [45]
org.eclipse.jetty.util; version=7.1.6.v20100715 ->  org.eclipse.jetty.util [47]
org.eclipse.jetty.util.component; version=7.1.6.v20100715 ->
org.eclipse.jetty.util [47]
org.eclipse.jetty.util.log; version=7.1.6.v20100715 ->
org.eclipse.jetty.util [47]
org.eclipse.jetty.util.resource; version=7.1.6.v20100715 ->
org.eclipse.jetty.util [47]
org.eclipse.jetty.util.thread; version=7.1.6.v20100715 ->
org.eclipse.jetty.util [47]
org.eclipse.jetty.webapp; version=7.1.6.v20100715 ->
org.eclipse.jetty.webapp [48]

There are no org.eclipse.jetty.*.jmx packages (eg.
org.eclipse.jetty.util.component.jmx), because they are shadowed by
their parent packages from other Jetty bundles. I am not sure what
does the specification say, but the bundle itself should be able to
see classes from itself. At least this was the case in framework 3.0.2
and before where it worked. Is it a bug in Felix>= 3.0.3 ?

I'm not completely sure what you mean here.

I have to assume that this bundle both imports and exports the org.eclipse.jetty.util.component.jmx class, since there is no wire and no resolve exception. Is that correct?

If so, then it should be able to see the classes in its contained package since it didn't import it.

Sounds odd. Is there some way for you to create a reproducible example and attach it to a JIRA issue?

-> richard

Thanks in advance.



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to