Hi Simon, You are right, I have been seeing the same error message. I believe, this error should be because of Tuscany code due to some class loader issues for the following reason...
While testing the itest/contribution-jee with OpenEJB v3.0.1, I noticed two kind of error messages 1. StringIndexOutofBoundException and 2. ClassNotFoundException (exactly as shown in your mail)... After we moved to OpenEJB v3.1.2, the StringIndexOutofBoundException seem to be fixed. And we are now still seeing the ClassNotFoundException. While investigating on the same, came to know from Vamsi that... We have a classloader issue with WAR file because of the single classloader in the itest. A possible solution to this problem would be to start the Geronimo server as part of the itest and load the contribution, so that a temporary classloader is set as thread context class loader and the contribution is processed. On Mon, Feb 22, 2010 at 5:07 PM, Simon Laws <[email protected]>wrote: > Looking back over the list it seems there has been some progress on > choosing a version of open ejb that has the right fixes in. When I run > the itest/contribution-jee tests now I get a different error, for > example, > > [INFO] > ------------------------------------------------------------------------ > [INFO] Building Apache Tuscany SCA iTest Contribution Java EE > [INFO] task-segment: [install] > [INFO] > ------------------------------------------------------------------------ > [INFO] [resources:resources {execution: default-resources}] > [WARNING] File encoding has not been set, using platform encoding Cp1252, > i.e. b > uild is platform dependent! > [WARNING] Using platform encoding (Cp1252 actually) to copy filtered > resources, > i.e. build is platform dependent! > [INFO] Copying 2 resources > [INFO] Copying 0 resource to META-INF > [WARNING] POM for 'org.apache.santuario:xmlsec:pom:1.4.0:compile' is > invalid. > > Its dependencies (if any) will NOT be available to the current build. > [WARNING] POM for 'opensaml:opensaml:pom:1.1:compile' is invalid. > > Its dependencies (if any) will NOT be available to the current build. > [INFO] [compiler:compile {execution: default-compile}] > [INFO] Compiling 3 source files to > D:\sca-java-1.x\itest\contribution-jee\target > \classes > [INFO] [resources:testResources {execution: default-testResources}] > [WARNING] Using platform encoding (Cp1252 actually) to copy filtered > resources, > i.e. build is platform dependent! > [INFO] Copying 9 resources > [INFO] [compiler:testCompile {execution: default-testCompile}] > [INFO] Compiling 10 source files to > D:\sca-java-1.x\itest\contribution-jee\targe > t\test-classes > [INFO] [surefire:test {execution: default-test}] > [INFO] Surefire report directory: > D:\sca-java-1.x\itest\contribution-jee\target\ > surefire-reports > > ------------------------------------------------------- > T E S T S > ------------------------------------------------------- > Running > org.apache.tuscany.sca.test.contribution.jee.SCAJarEarAppcompWarAppcompT > estCase > INFO - Extracting jar: C:\DOCUME~1\slaws\LOCALS~1\Temp\temp7665.ear > INFO - Extracted path: C:\DOCUME~1\slaws\LOCALS~1\Temp\temp7665 > INFO - Extracting jar: C:\Documents and Settings\slaws\Local > Settings\Temp\temp7 > 665\itest-contribution-jee-samples-06-war-appcomp-contrib-implicit.war > INFO - Extracted path: C:\Documents and Settings\slaws\Local > Settings\Temp\temp7 > 665\itest-contribution-jee-samples-06-war-appcomp-contrib-implicit > WARN - No application-client.xml found assuming annotations present: > C:\Document > s and Settings\slaws\Local Settings\Temp\temp7665, module: > itest-contribution-je > e-samples-00-jar-shared.jar > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 7.359 sec > <<< FA > ILURE! > > testSCAJarEarAppcomp(org.apache.tuscany.sca.test.contribution.jee.SCAJarEarAppco > mpWarAppcompTestCase) Time elapsed: 7.344 sec <<< ERROR! > java.lang.RuntimeException: > org.apache.tuscany.sca.contribution.service.Contribu > tionException: > org.apache.tuscany.sca.contribution.service.ContributionReadExcep > tion: org.apache.openejb.OpenEJBException: Unable to load servlet class: > sample. > HelloworldEjbServlet: sample.HelloworldEjbServlet > at > org.apache.tuscany.sca.test.contribution.jee.TestExternalEarModelReso > lver.resolveModel(TestExternalEarModelResolver.java:133) > at > org.apache.tuscany.sca.contribution.resolver.ExtensibleModelResolver. > resolveModel(ExtensibleModelResolver.java:179) > at > org.apache.tuscany.sca.implementation.jee.xml.JEEImplementationProces > sor.resolve(JEEImplementationProcessor.java:203) > at > org.apache.tuscany.sca.implementation.jee.xml.JEEImplementationProces > sor.resolve(JEEImplementationProcessor.java:64) > at > org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProc > > essorExtensionPoint$LazyStAXArtifactProcessor.resolve(DefaultStAXArtifactProcess > orExtensionPoint.java:388) > at > org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactP > rocessor.resolve(ExtensibleStAXArtifactProcessor.java:183) > at > org.apache.tuscany.sca.assembly.xml.BaseAssemblyProcessor.resolveImpl > ementation(BaseAssemblyProcessor.java:340) > at > org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(Compos > iteProcessor.java:1028) > at > org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(Compos > iteProcessor.java:90) > at > org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProc > > essorExtensionPoint$LazyStAXArtifactProcessor.resolve(DefaultStAXArtifactProcess > orExtensionPoint.java:388) > at > org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactP > rocessor.resolve(ExtensibleStAXArtifactProcessor.java:183) > at > org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolv > e(CompositeDocumentProcessor.java:231) > at > org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolv > e(CompositeDocumentProcessor.java:59) > at > org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactPr > ocessor.resolve(ExtensibleURLArtifactProcessor.java:106) > at > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceI > mpl.processResolvePhase(ContributionServiceImpl.java:625) > at > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceI > mpl.addContribution(ContributionServiceImpl.java:430) > at > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceI > mpl.contribute(ContributionServiceImpl.java:198) > at > org.apache.tuscany.sca.test.contribution.jee.SCAJarEarAppcompWarAppco > mpTestCase.testSCAJarEarAppcomp(SCAJarEarAppcompWarAppcompTestCase.java:91) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(Framework > Method.java:44) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCal > lable.java:15) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMe > thod.java:41) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMet > hod.java:20) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores. > java:28) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.ja > va:31) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRun > ner.java:73) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRun > ner.java:46) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41) > at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores. > java:28) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.ja > va:31) > at org.junit.runners.ParentRunner.run(ParentRunner.java:220) > at > org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet. > java:62) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTes > tSet(AbstractDirectoryTestSuite.java:138) > at > org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Ab > stractDirectoryTestSuite.java:125) > at org.apache.maven.surefire.Surefire.run(Surefire.java:132) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Su > refireBooter.java:308) > at > org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.j > ava:879) > Caused by: > org.apache.tuscany.sca.contribution.service.ContributionException: or > g.apache.tuscany.sca.contribution.service.ContributionReadException: > org.apache. > openejb.OpenEJBException: Unable to load servlet class: > sample.HelloworldEjbServ > let: sample.HelloworldEjbServlet > at > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceI > mpl.addContribution(ContributionServiceImpl.java:421) > at > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceI > mpl.contribute(ContributionServiceImpl.java:198) > at > org.apache.tuscany.sca.test.contribution.jee.TestExternalEarModelReso > lver.resolveModel(TestExternalEarModelResolver.java:104) > ... 45 more > Caused by: > org.apache.tuscany.sca.contribution.service.ContributionReadException > : org.apache.openejb.OpenEJBException: Unable to load servlet class: > sample.Hell > oworldEjbServlet: sample.HelloworldEjbServlet > at > org.apache.tuscany.sca.contribution.jee.JavaEEModuleHelper.getMetadat > aCompleteModules(JavaEEModuleHelper.java:118) > at > org.apache.tuscany.sca.contribution.jee.impl.JavaEEIntrospectorImpl.i > ntrospectJeeArchive(JavaEEIntrospectorImpl.java:404) > at > org.apache.tuscany.sca.contribution.jee.impl.JavaEEArchiveProcessor.r > ead(JavaEEArchiveProcessor.java:46) > at > org.apache.tuscany.sca.contribution.jee.impl.JavaEEArchiveProcessor.r > ead(JavaEEArchiveProcessor.java:34) > at > org.apache.tuscany.sca.contribution.processor.DefaultURLArtifactProce > > ssorExtensionPoint$LazyURLArtifactProcessor.read(DefaultURLArtifactProcessorExte > nsionPoint.java:222) > at > org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactPr > ocessor.read(ExtensibleURLArtifactProcessor.java:96) > at > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceI > mpl.processReadPhase(ContributionServiceImpl.java:541) > at > org.apache.tuscany.sca.contribution.service.impl.ContributionServiceI > mpl.addContribution(ContributionServiceImpl.java:419) > ... 47 more > Caused by: org.apache.openejb.OpenEJBException: Unable to load servlet > class: sa > mple.HelloworldEjbServlet: sample.HelloworldEjbServlet > at > org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.de > ploy(AnnotationDeployer.java:557) > at > org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.de > ploy(AnnotationDeployer.java:513) > at > org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeploye > r.java:169) > at > org.apache.tuscany.sca.contribution.jee.JavaEEModuleHelper.getMetadat > aCompleteModules(JavaEEModuleHelper.java:116) > ... 54 more > Caused by: java.lang.ClassNotFoundException: sample.HelloworldEjbServlet > at java.net.URLClassLoader$1.run(URLClassLoader.java:200) > 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 > org.apache.maven.surefire.booter.IsolatedClassLoader.loadClass(Isolat > edClassLoader.java:103) > at > org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.de > ploy(AnnotationDeployer.java:554) > ... 57 more > > Anyone else seeing this? > > Simon > > -- > Apache Tuscany committer: tuscany.apache.org > Co-author of a book about Tuscany and SCA: tuscanyinaction.com > -- Thanks & Regards, Ramkumar Ramalingam
