Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[buckminster-dev] Bug#173950

Hi Thomas,
 
I am getting this error when saving a CPEX file:
 
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
 at java.util.ArrayList.RangeCheck(Unknown Source)
 at java.util.ArrayList.set(Unknown Source)
 at org.eclipse.buckminster.core.cspec.builder.GroupBuilder.getPrerequisiteList(GroupBuilder.java:117)
 at org.eclipse.buckminster.core.cspec.builder.GroupBuilder.createAttribute(GroupBuilder.java:77)
 at org.eclipse.buckminster.core.cspec.builder.GroupBuilder.createAttribute(GroupBuilder.java:1)
 at org.eclipse.buckminster.core.cspec.model.CSpec.<init>(CSpec.java:154)
 at org.eclipse.buckminster.core.cspec.builder.CSpecBuilder.createCSpec(CSpecBuilder.java:150)
 at org.eclipse.buckminster.core.cspec.parser.CSpecHandler.getCSpec(CSpecHandler.java:50)
 at org.eclipse.buckminster.core.cspec.parser.CSpecParser.childPopped(CSpecParser.java:87)
 at org.eclipse.buckminster.sax.ChildHandler.endElement(ChildHandler.java:85)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
 at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
 at org.eclipse.buckminster.core.parser.AbstractParser.parseInput(AbstractParser.java:140)
 at org.eclipse.buckminster.core.cspec.parser.CSpecParser.parse(CSpecParser.java:66)
 at org.eclipse.buckminster.core.cspec.parser.CSpecParser.parse(CSpecParser.java:1)
 at org.eclipse.buckminster.core.metadata.FileStorage.getElement(FileStorage.java:145)
 at org.eclipse.buckminster.core.metadata.model.Resolution.getCSpec(Resolution.java:177)
 at org.eclipse.buckminster.core.metadata.model.Resolution.getComponentIdentifier(Resolution.java:166)
 at org.eclipse.buckminster.core.metadata.WorkspaceInfo.getActiveResolutions(WorkspaceInfo.java:122)
 at org.eclipse.buckminster.core.metadata.WorkspaceInfo.getResolution(WorkspaceInfo.java:260)
 at org.eclipse.buckminster.core.metadata.WorkspaceInfo.getCSpec(WorkspaceInfo.java:213)
 at org.eclipse.buckminster.core.metadata.MetadataSynchronizer.refreshProject(MetadataSynchronizer.java:291)
 at org.eclipse.buckminster.core.metadata.MetadataSynchronizer$MetadataRefreshJob.run(MetadataSynchronizer.java:167)
 at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
The problem could be solved by modifying the org.eclipse.buckminster.core.cspec.builder.GroupBuilder:
 
Current code:

List<Prerequisite> getPrerequisiteList()

{

int idx = (m_prerequisites == null) ? 0 : m_prerequisites.size();

if(idx == 0)

return Collections.emptyList();

ArrayList<Prerequisite> bld = new ArrayList<Prerequisite>(idx);

while(--idx >= 0)

bld.set(idx, m_prerequisites.get(idx).createPrerequisite());

return bld;

}

Modified code:

List<Prerequisite> getPrerequisiteList()

{

int idx = (m_prerequisites == null) ? 0 : m_prerequisites.size();

if(idx == 0)

return Collections.emptyList();

ArrayList<Prerequisite> bld = new ArrayList<Prerequisite>(idx);

for (PrerequisiteBuilder prerequisite : m_prerequisites)

bld.add(prerequisite.createPrerequisite());

return bld;

}

 

But after this modification I get another error (with no stack trace):

More than one version of component javax.servet:plugin$2.4.0#OSGi is known to the Buckminster

Any idea?

 

Regards

  Filip

 


Back to the top