You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Jim Marino (JIRA)" <tu...@ws.apache.org> on 2006/05/14 06:21:07 UTC
[jira] Commented: (TUSCANY-368) Running helloworld sample using
dist give class not found exception
[ http://issues.apache.org/jira/browse/TUSCANY-368?page=comments#action_12402205 ]
Jim Marino commented on TUSCANY-368:
------------------------------------
I spent about two minutes looking at this so I may be offbase...
This appears to be a classloading/isolation problem. SystemImplementationLoader calls Java5ComponentTypeIntrospector to introspect the implementation of a system component configured in a module fragment. As Java5ComponentTypeIntrospector introspects the implementation class's methods, it encounters a ClassCastException attempting to load StandardHost, a Tomcat class. StandardHost is referenced by TuscanyHost, which extends it. TuscanyHost is referenced by TomcatHost, a system service which implements the host api. So, it sounds as if SystemImplementationLoader is attempting to process the SCDL entry for TomcatHost in the context of a classloader which does not have access to StandardHost since I believe Tomcat segregrates its implementation classes from application classloaders.
I haven't been following the changes where jars have been moved to common in Tomcat but if the above is correct, this may be the culprit.
> Running helloworld sample using dist give class not found exception
> -------------------------------------------------------------------
>
> Key: TUSCANY-368
> URL: http://issues.apache.org/jira/browse/TUSCANY-368
> Project: Tuscany
> Type: Bug
> Reporter: Rick Rineholt
> Priority: Blocker
>
> Running helloworld sca sample with java.ext.dirs=\java\distribution\target\tuscany-dist\lib gives exception below.
> Oddly enough running it with testing/tomcat/target/j2se does not.
> Is it possible this class is in some jar manifest that's trying to load it that is not created as part of the normal build process ?
> Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/catalina/core/StandardHost
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
> at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
> at java.lang.Class.getDeclaredMethods0(Native Method)
> at java.lang.Class.privateGetDeclaredMethods(Class.java:2365)
> at java.lang.Class.privateGetPublicMethods(Class.java:2488)
> at java.lang.Class.getMethods(Class.java:1406)
> at org.apache.tuscany.core.config.impl.Java5ComponentTypeIntrospector.introspect(Java5ComponentTypeIntrospector.java:105)
> at org.apache.tuscany.core.config.impl.Java5ComponentTypeIntrospector.introspect(Java5ComponentTypeIntrospector.java:92)
> at org.apache.tuscany.core.loader.system.SystemImplementationLoader.load(SystemImplementationLoader.java:63)
> at org.apache.tuscany.core.loader.system.SystemImplementationLoader.load(SystemImplementationLoader.java:36)
> at org.apache.tuscany.core.loader.impl.StAXLoaderRegistryImpl.load(StAXLoaderRegistryImpl.java:66)
> at org.apache.tuscany.core.loader.assembly.ComponentLoader.load(ComponentLoader.java:76)
> at org.apache.tuscany.core.loader.assembly.ComponentLoader.load(ComponentLoader.java:49)
> at org.apache.tuscany.core.loader.impl.StAXLoaderRegistryImpl.load(StAXLoaderRegistryImpl.java:66)
> at org.apache.tuscany.core.loader.assembly.CompositeLoader.loadComposite(CompositeLoader.java:43)
> at org.apache.tuscany.core.loader.assembly.ModuleFragmentLoader.load(ModuleFragmentLoader.java:39)
> at org.apache.tuscany.core.loader.assembly.ModuleFragmentLoader.load(ModuleFragmentLoader.java:32)
> at org.apache.tuscany.core.loader.impl.StAXLoaderRegistryImpl.load(StAXLoaderRegistryImpl.java:66)
> at org.apache.tuscany.core.config.impl.StAXModuleComponentConfigurationLoaderImpl.loadModuleFragment(StAXModuleComponentConfigurationLoaderImpl.java:70)
> at org.apache.tuscany.core.config.impl.AbstractModuleComponentConfigurationLoader.loadModuleComponent(AbstractModuleComponentConfigurationLoader.java:146)
> at org.apache.tuscany.core.config.impl.AbstractModuleComponentConfigurationLoader.loadModuleComponent(AbstractModuleComponentConfigurationLoader.java:132)
> at org.apache.tuscany.core.config.impl.AbstractModuleComponentConfigurationLoader.loadSystemModuleComponent(AbstractModuleComponentConfigurationLoader.java:91)
> at org.apache.tuscany.core.client.TuscanyRuntime.<init>(TuscanyRuntime.java:97)
> at org.apache.tuscany.core.client.TuscanyRuntime.<init>(TuscanyRuntime.java:67)
> at helloworld.HelloWorldClient.main(HelloWorldClient.java:32)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira