Uploaded image for project: 'XWiki Commons'
  1. XWiki Commons
  2. XCOMMONS-1020

XWiki Repository client handler is not thread safe

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 8.1
    • Fix Version/s: 8.2, 7.4.5
    • Component/s: Extension
    • Labels:
    • Environment:
      Chrome 51
    • Documentation:
      N/A
    • Documentation in Release Notes:
      N/A
    • Similar issues:

      Description

      • I tested on a clean instance of XE 8.1, using MySQL 5.7.
      • As an Admin, I wanted to add a new macro > Freemind macro.
      • I searched for it and I found it > being displayed with the Install button, like in all normal cases.
      • But, after I clicked on Install button, I got this error:
        We couldn't find any extension with id 'fmancinelli:freemind-macro' and version '1.0'. Make sure you have the right extension repositories configured.
        We found an extension job associated with the missing extension:
         Install plan log
        Starting job of type [installplan] with identifier [extension/plan/fmancinelli:freemind-macro/wiki:xwiki]
        Resolving extension [fmancinelli:freemind-macro-1.0] on namespace [Home]
        FWK005 parse may not be called while parsing.
        class org.xwiki.extension.ResolveException: Failed to create extension object for extension [fmancinelli:freemind-macro-1.0]
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.resolve(XWikiExtensionRepository.java:340)
            at org.xwiki.extension.repository.internal.DefaultExtensionRepositoryManager.resolve(DefaultExtensionRepositoryManager.java:212)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:736)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        Caused by: class javax.xml.bind.UnmarshalException: null
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:317)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:300)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.resolve(XWikiExtensionRepository.java:335)
            at org.xwiki.extension.repository.internal.DefaultExtensionRepositoryManager.resolve(DefaultExtensionRepositoryManager.java:212)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:736)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        Caused by: class org.xml.sax.SAXException: FWK005 parse may not be called while parsing.
            at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:317)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:300)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.resolve(XWikiExtensionRepository.java:335)
            at org.xwiki.extension.repository.internal.DefaultExtensionRepositoryManager.resolve(DefaultExtensionRepositoryManager.java:212)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:736)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        FWK005 parse may not be called while parsing.
        class org.xwiki.extension.InstallException: Failed to resolve extension [fmancinelli:freemind-macro-1.0]
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:738)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        Caused by: class org.xwiki.extension.ResolveException: Failed to resolve extension [fmancinelli:freemind-macro-1.0]
            at org.xwiki.extension.repository.internal.DefaultExtensionRepositoryManager.resolve(DefaultExtensionRepositoryManager.java:225)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:736)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        Caused by: class org.xwiki.extension.ResolveException: Failed to create extension object for extension [fmancinelli:freemind-macro-1.0]
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.resolve(XWikiExtensionRepository.java:340)
            at org.xwiki.extension.repository.internal.DefaultExtensionRepositoryManager.resolve(DefaultExtensionRepositoryManager.java:212)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:736)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        Caused by: class javax.xml.bind.UnmarshalException: null
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:317)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:300)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.resolve(XWikiExtensionRepository.java:335)
            at org.xwiki.extension.repository.internal.DefaultExtensionRepositoryManager.resolve(DefaultExtensionRepositoryManager.java:212)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:736)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        Caused by: class org.xml.sax.SAXException: FWK005 parse may not be called while parsing.
            at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:317)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.getRESTObject(XWikiExtensionRepository.java:300)
            at org.xwiki.extension.repository.xwiki.internal.XWikiExtensionRepository.resolve(XWikiExtensionRepository.java:335)
            at org.xwiki.extension.repository.internal.DefaultExtensionRepositoryManager.resolve(DefaultExtensionRepositoryManager.java:212)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.resolveExtension(AbstractInstallPlanJob.java:736)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:707)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:334)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.installExtension(AbstractInstallPlanJob.java:298)
            at org.xwiki.extension.job.internal.AbstractInstallPlanJob.start(AbstractInstallPlanJob.java:232)
            at org.xwiki.extension.job.internal.InstallPlanJob.runInternal(InstallPlanJob.java:88)
            at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206)
            at org.xwiki.job.AbstractJob.run(AbstractJob.java:189)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
        Finished job of type [installplan] with identifier [extension/plan/fmancinelli:freemind-macro/wiki:xwiki]
        
      • 2nd time I searched for the macro and clicked Install button, the installation finished successfully.

        Attachments

          Activity

            People

            • Assignee:
              tmortagne Thomas Mortagne
              Reporter:
              ihrehorciuc Irina Hrehorciuc
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

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