Uploaded image for project: 'Confluence'
  1. Confluence
  2. CONFLUENCE-483

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

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 9.87.2
    • 9.87.1
    • Syntax - XHTML
    • None
    • Unknown

    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
       

      Attachments

        Activity

          People

            rjakse Raphaël Jakse
            rjakse Raphaël Jakse
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: