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

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Won't Fix
    • Affects Version/s: 8.4.4
    • Fix Version/s: None
    • Component/s: Filter
    • Labels:
      None
    • Difficulty:
      Unknown
    • Similar issues:

      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

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

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Date of First Response: