[
https://issues.apache.org/jira/browse/XBEAN-140?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vamsavardhana Reddy closed XBEAN-140.
-------------------------------------
Resolution: Duplicate
Duplicate of XBEAN-126.
> ClassFinder needs better processing of creating list of classes from JARs
> -------------------------------------------------------------------------
>
> Key: XBEAN-140
> URL: https://issues.apache.org/jira/browse/XBEAN-140
> Project: XBean
> Issue Type: Bug
> Components: finder
> Affects Versions: 3.5
> Reporter: Vamsavardhana Reddy
>
> I am using the ClassFinder with Geronimo code. One of the JARs that needed
> to be processed in my case is
> com\sun\xml\bind\jaxb-xjc\2.0.5\jaxb-xjc-2.0.5.jar. This jar contains a
> directory named 1.0 with some classes in it. When ClassFinder is processes
> this JAR, it is constructing class names like
> "1.0.com.sun.codemodel.CodeWriter" etc which are not valid class names and
> can't be located in the jar at "/1/0/com/sun/codemodel/CodeWriter.class" (but
> is present at "/1.0/com/sun/codemodel/CodeWriter.class"). This is resulting
> in stack traces like the following:
> java.lang.Exception: Could not load 1/0/com/sun/codemodel/CodeWriter.class
> at
> org.apache.xbean.finder.ClassFinder.readClassDef(ClassFinder.java:726)
> at org.apache.xbean.finder.ClassFinder.<init>(ClassFinder.java:141)
> at org.apache.xbean.finder.ClassFinder.<init>(ClassFinder.java:97)
> at org.apache.xbean.finder.ClassFinder.<init>(ClassFinder.java:86)
> at
> org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:269)
> at
> org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:247)
> at
> org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:167)
> at
> org.apache.tuscany.sca.contribution.jee.JavaEEModuleHelper.getMetadataCompleteModules(JavaEEModuleHelper.java:116)
> at
> org.apache.tuscany.sca.contribution.jee.impl.JavaEEIntrospectorImpl.introspectWebArchive(JavaEEIntrospectorImpl.java:80)
> at
> org.apache.tuscany.sca.contribution.jee.impl.WebArchiveProcessor.read(WebArchiveProcessor.java:46)
> at
> org.apache.tuscany.sca.contribution.jee.impl.WebArchiveProcessor.read(WebArchiveProcessor.java:1)
> at
> org.apache.tuscany.sca.contribution.processor.DefaultURLArtifactProcessorExtensionPoint$LazyURLArtifactProcessor.read(DefaultURLArtifactProcessorExtensionPoint.java:222)
> at
> org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor.read(ExtensibleURLArtifactProcessor.java:96)
> at
> org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.processReadPhase(ContributionServiceImpl.java:541)
> at
> org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.addContribution(ContributionServiceImpl.java:419)
> at
> org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.contribute(ContributionServiceImpl.java:198)
> at
> org.apache.geronimo.tuscany.EmbeddedRuntimeGBean.doStart(EmbeddedRuntimeGBean.java:90)
> ...
> I guess there will also be problems when a directory inside the jar has a dot
> in its name. It is better to eliminate invalid class names while creating
> the list of classes.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.