This issue has been created
There is 1 update.
 
 
Confluence / cid:jira-generated-image-avatar-b0c424e0-6a55-41b9-afed-42fa36505b55 CONFLUENCE-483 Open

Confluence Conversion fails with an index ouf of bound exception when propagating table column styles

 
View issue   ·   Add comment
 

Issue created

 
cid:jira-generated-image-avatar-9602fb59-2f01-4e10-86e1-9fc039fe9e36 Raphaël Jakse created this issue on 16/Jun/25 12:48
 
Summary: Confluence Conversion fails with an index ouf of bound exception when propagating table column styles
Issue Type: cid:jira-generated-image-avatar-b0c424e0-6a55-41b9-afed-42fa36505b55 Bug
Affects Versions: 9.87.1
Assignee: Unassigned
Components: Syntax - XHTML
Created: 16/Jun/25 12:48
Priority: cid:jira-generated-image-static-major-ad93b6c2-0db9-4c74-a96f-09b9cc856186 Major
Reporter: Raphaël Jakse
Description:

The table style propagation introduced in CONFLUENCE-463 sometimes makes contents fail to convert with the following exception:

12:46:30.581 [main] ERROR o.x.c.c.f.i.i.ConfluenceInputFilterStream - Failed to convert content of the page with id [{pageId=463168605, pageRevision=7, pageTitle=Misc content, parentId=424775527, spaceKey=MISC}]
org.xwiki.filter.FilterException: Failed to parse Confluence XHTML content
    at org.xwiki.contrib.confluence.parser.xhtml.internal.ConfluenceXHTMLInputFilterStream.read(ConfluenceXHTMLInputFilterStream.java:121)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.ConfluenceXHTMLInputFilterStream.read(ConfluenceXHTMLInputFilterStream.java:47)
    at org.xwiki.filter.input.AbstractBeanInputFilterStream.read(AbstractBeanInputFilterStream.java:79)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.parse(ConfluenceInputFilterStream.java:2603)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.convertToXWiki21(ConfluenceInputFilterStream.java:2571)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.beginPageRevision(ConfluenceInputFilterStream.java:2144)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.readPageRevision(ConfluenceInputFilterStream.java:2043)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.sendRevisions(ConfluenceInputFilterStream.java:1742)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.sendTerminalDoc(ConfluenceInputFilterStream.java:1640)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.readPage(ConfluenceInputFilterStream.java:1601)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.sendPage(ConfluenceInputFilterStream.java:877)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.sendPages(ConfluenceInputFilterStream.java:928)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.sendSpace(ConfluenceInputFilterStream.java:670)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.sendConfluenceRootSpace(ConfluenceInputFilterStream.java:640)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.sendSpaces(ConfluenceInputFilterStream.java:512)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.readInternal(ConfluenceInputFilterStream.java:389)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.read(ConfluenceInputFilterStream.java:275)
    at org.xwiki.contrib.confluence.filter.internal.input.ConfluenceInputFilterStream.read(ConfluenceInputFilterStream.java:111)
    at org.xwiki.filter.input.AbstractBeanInputFilterStream.read(AbstractBeanInputFilterStream.java:79)
    at org.xwiki.filter.test.integration.FilterTest.runTestInternal(FilterTest.java:259)
    at org.xwiki.filter.test.integration.FilterTest.execute(FilterTest.java:102)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
    at org.xwiki.filter.test.integration.FilterTestSuite$TestClassRunnerForParameters.runChild(FilterTestSuite.java:140)
    at org.xwiki.filter.test.integration.FilterTestSuite$TestClassRunnerForParameters.runChild(FilterTestSuite.java:80)
    at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    at org.junit.runners.Suite.runChild(Suite.java:128)
    at org.junit.runners.Suite.runChild(Suite.java:27)
    at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
    at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)
    at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)
    at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)
    at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)
    at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
Caused by: org.xwiki.rendering.parser.ParseException: Failed to parse input source
    at org.xwiki.rendering.internal.parser.wikimodel.AbstractWikiModelParser.parse(AbstractWikiModelParser.java:138)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.ConfluenceXHTMLParser.parse(ConfluenceXHTMLParser.java:334)
    at org.xwiki.rendering.internal.parser.wikimodel.AbstractWikiModelParser.parse(AbstractWikiModelParser.java:114)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.ConfluenceXHTMLInputFilterStream.read(ConfluenceXHTMLInputFilterStream.java:119)
    ... 56 common frames omitted
Caused by: org.xwiki.rendering.wikimodel.WikiParserException: java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 3
    at org.xwiki.rendering.wikimodel.xhtml.XhtmlParser.parse(XhtmlParser.java:136)
    at org.xwiki.rendering.internal.parser.wikimodel.AbstractWikiModelParser.parse(AbstractWikiModelParser.java:134)
    ... 59 common frames omitted
Caused by: java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 3
    at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
    at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
    at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
    at java.base/java.util.Objects.checkIndex(Objects.java:361)
    at java.base/java.util.ArrayList.get(ArrayList.java:427)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.wikimodel.TableCellTagHandler.fetchColumnAttributes(TableCellTagHandler.java:118)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.wikimodel.TableCellTagHandler.fetchColumnStyle(TableCellTagHandler.java:71)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.wikimodel.TableCellTagHandler.beginCell(TableCellTagHandler.java:55)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.wikimodel.TableCellTagHandler.begin(TableCellTagHandler.java:49)
    at org.xwiki.rendering.wikimodel.xhtml.handler.TagHandler.beginElement(TagHandler.java:67)
    at org.xwiki.rendering.wikimodel.xhtml.impl.TagContext.beginElement(TagContext.java:74)
    at org.xwiki.rendering.wikimodel.xhtml.impl.TagStack.beginElement(TagStack.java:114)
    at org.xwiki.rendering.wikimodel.xhtml.impl.XhtmlHandler.startElement(XhtmlHandler.java:222)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
    at org.xwiki.rendering.wikimodel.xhtml.filter.XHTMLWhitespaceXMLFilter.startElement(XHTMLWhitespaceXMLFilter.java:156)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.wikimodel.ConfluenceXHTMLWhitespaceXMLFilter.startElement(ConfluenceXHTMLWhitespaceXMLFilter.java:77)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
    at org.xwiki.contrib.confluence.parser.xhtml.internal.wikimodel.ConfluenceAttributeXMLFilter.startElement(ConfluenceAttributeXMLFilter.java:67)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
    at org.xwiki.rendering.wikimodel.xhtml.filter.AccumulationXMLFilter.startElement(AccumulationXMLFilter.java:74)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
    at org.xwiki.rendering.wikimodel.xhtml.filter.DTDXMLFilter.startElement(DTDXMLFilter.java:73)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:345)
    at org.xwiki.rendering.wikimodel.xhtml.filter.DefaultXMLFilter.parse(DefaultXMLFilter.java:58)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:345)
    at org.xwiki.rendering.wikimodel.xhtml.filter.DefaultXMLFilter.parse(DefaultXMLFilter.java:58)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:345)
    at org.xwiki.rendering.wikimodel.xhtml.filter.DefaultXMLFilter.parse(DefaultXMLFilter.java:58)
    at java.xml/org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:345)
    at org.xwiki.rendering.wikimodel.xhtml.filter.DefaultXMLFilter.parse(DefaultXMLFilter.java:58)
    at org.xwiki.rendering.wikimodel.xhtml.XhtmlParser.parse(XhtmlParser.java:134)
    ... 60 common frames omitted
 
 
 

1 update

 
cid:jira-generated-image-avatar-9602fb59-2f01-4e10-86e1-9fc039fe9e36 Changes by Raphaël Jakse on 16/Jun/25 12:48
 
Assignee: Raphaël Jakse