Uploaded image for project: 'XWiki Platform'
  1. XWiki Platform
  2. XWIKI-15028

Class pages exported on newer XWiki versions fail to be imported on older instances

    XMLWordPrintable

Details

    • Bug
    • Resolution: Solved By
    • Blocker
    • None
    • 8.4.4
    • Filter
    • None
    • Unknown

    Description

      XWIKI-7783 introduced a new class meta-property, hint, which seem to cause the import (both manual and through Distribution Wizard) to fail on older instances (<XWiki 9.11-rc-1).

      • The manual import just shows the page in the "Erroneous pages" section. No info in he logs.
      • Distribution Wizard seems to completely skip the page from the UI log. Opening the jobs status xml logs, a NPE seem to be thown (since there is nothing resolved in the currentClassPropertyMeta map, in the import code). Also note that the failing document is no specified in the exception, which makes it harder to know what fails:
              <org.xwiki.logging.event.LogEvent>
                <level>ERROR</level>
                <timeStamp>1518798355093</timeStamp>
                <message>Failed to parse document</message>
                <throwable class="org.xwiki.filter.FilterException">
                  <detailMessage>Failed to read XAR XML document</detailMessage>
                  <cause class="java.lang.NullPointerException">
                    <stackTrace>
                      <trace>org.xwiki.filter.instance.internal.output.XWikiDocumentOutputFilterStream.onWikiClassPropertyField(XWikiDocumentOutputFilterStream.java:573)</trace>
                      <trace>sun.reflect.GeneratedMethodAccessor434.invoke(Unknown Source)</trace>
                      <trace>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)</trace>
                      <trace>java.lang.reflect.Method.invoke(Method.java:498)</trace>
                      <trace>org.xwiki.filter.internal.FilterProxy.invoke(FilterProxy.java:90)</trace>
                      <trace>org.xwiki.filter.internal.FilterProxy.invoke(FilterProxy.java:63)</trace>
                      <trace>com.sun.proxy.$Proxy79.onWikiClassPropertyField(Unknown Source)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.ClassPropertyReader$WikiClassProperty.send(ClassPropertyReader.java:57)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.ClassReader$WikiClass.send(ClassReader.java:61)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.WikiObjectReader$WikiObject.send(WikiObjectReader.java:85)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.DocumentLocaleReader.sendWikiObjects(DocumentLocaleReader.java:522)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.DocumentLocaleReader.readDocument(DocumentLocaleReader.java:467)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.DocumentLocaleReader.read(DocumentLocaleReader.java:352)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.DocumentLocaleReader.read(DocumentLocaleReader.java:325)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.XARInputFilterStream.readDocument(XARInputFilterStream.java:120)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.XARInputFilterStream.read(XARInputFilterStream.java:70)</trace>
                      <trace>org.xwiki.filter.xar.internal.input.XARInputFilterStream.read(XARInputFilterStream.java:47)</trace>
                      <trace>org.xwiki.filter.input.AbstractBeanInputFilterStream.read(AbstractBeanInputFilterStream.java:79)</trace>
                      <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.getXWikiDocument(Packager.java:343)</trace>
                      <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:199)</trace>
                      <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:175)</trace>
                      <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:146)</trace>
                      <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:136)</trace>
                      <trace>org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:203)</trace>
                      <trace>org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:167)</trace>
                      <trace>org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)</trace>
                      <trace>org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:268)</trace>
                      <trace>org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:201)</trace>
                      <trace>org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:151)</trace>
                      <trace>org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:146)</trace>
                      <trace>org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)</trace>
                      <trace>org.xwiki.job.AbstractJob.run(AbstractJob.java:189)</trace>
                      <trace>java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)</trace>
                      <trace>java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)</trace>
                      <trace>java.lang.Thread.run(Thread.java:748)</trace>
                    </stackTrace>
                  </cause>
                  <stackTrace>
                    <trace>org.xwiki.filter.xar.internal.input.XARInputFilterStream.readDocument(XARInputFilterStream.java:122)</trace>
                    <trace>org.xwiki.filter.xar.internal.input.XARInputFilterStream.read(XARInputFilterStream.java:70)</trace>
                    <trace>org.xwiki.filter.xar.internal.input.XARInputFilterStream.read(XARInputFilterStream.java:47)</trace>
                    <trace>org.xwiki.filter.input.AbstractBeanInputFilterStream.read(AbstractBeanInputFilterStream.java:79)</trace>
                    <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.getXWikiDocument(Packager.java:343)</trace>
                    <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:199)</trace>
                    <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:175)</trace>
                    <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:146)</trace>
                    <trace>org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:136)</trace>
                    <trace>org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:203)</trace>
                    <trace>org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:167)</trace>
                    <trace>org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)</trace>
                    <trace>org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:268)</trace>
                    <trace>org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:201)</trace>
                    <trace>org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:151)</trace>
                    <trace>org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:146)</trace>
                    <trace>org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)</trace>
                    <trace>org.xwiki.job.AbstractJob.run(AbstractJob.java:189)</trace>
                    <trace>java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)</trace>
                    <trace>java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)</trace>
                    <trace>java.lang.Thread.run(Thread.java:748)</trace>
                  </stackTrace>
                </throwable>
              </org.xwiki.logging.event.LogEvent>
        

      Attachments

        Issue Links

          Activity

            People

              tmortagne Thomas Mortagne
              enygma Eduard Moraru
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: