【问题标题】:Magnolia 5.4 upgrade java.nio.file.InvalidPathException on publishing/unpublishingMagnolia 5.4 在发布/取消发布时升级 java.nio.file.InvalidPathException
【发布时间】:2015-08-04 11:39:41
【问题描述】:

当我尝试从 5.3.9 升级到 magnolia 5.4 或从官方网站下载带有 tomcat 的 magnolia 捆绑包并运行它时,在发布/取消发布时我收到:

Exception in thread "Thread-68" java.nio.file.InvalidPathException: Illegal char <:> at index 48: C:\dev\apache-tomcat-8.0.21\webapps\mg-auth\/jcr:system/jcr:versionStorage/af/72/95/af72957c-bb65-4132-881c-205eee9e68f3/1.12
    at sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
    at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
    at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
    at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94)
    at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255)
    at java.nio.file.Paths.get(Paths.java:84)
    at info.magnolia.resourceloader.file.FileSystemResourceOrigin.getPath(FileSystemResourceOrigin.java:241)
    at info.magnolia.resourceloader.file.FileSystemResourceOrigin.hasPath(FileSystemResourceOrigin.java:139)
    at info.magnolia.resourceloader.util.Functions$1.apply(Functions.java:60)
    at info.magnolia.resourceloader.util.Functions$1.apply(Functions.java:57)
    at com.google.common.collect.Iterators$7.computeNext(Iterators.java:652)
    at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
    at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
    at com.google.common.collect.TransformedIterator.hasNext(TransformedIterator.java:43)
    at com.google.common.collect.Iterators.addAll(Iterators.java:361)
    at com.google.common.collect.Lists.newArrayList(Lists.java:160)
    at com.google.common.collect.Lists.newArrayList(Lists.java:144)
    at info.magnolia.resourceloader.layered.LayeredResourceOrigin.getByPath(LayeredResourceOrigin.java:96)
    at info.magnolia.resourceloader.layered.RelayerResourceVisitor.visitFile(RelayerResourceVisitor.java:60)
    at info.magnolia.resourceloader.jcr.JcrResourceOrigin$1.onEvent(JcrResourceOrigin.java:330)
    at info.magnolia.cms.util.ObservationUtil$ObservationBasedDelayedExecutor$1.run(ObservationUtil.java:253)
    at info.magnolia.cms.util.DelayedExecutor$RunnableWrapper.run(DelayedExecutor.java:103)
    at EDU.oswego.cs.dl.util.concurrent.ClockDaemon$RunLoop.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:745)

我对路径结构以及资源加载器尝试解析此路径的原因感到非常困惑。

【问题讨论】:

  • 我遇到了完全相同的错误。恕我直言,这实际上是 Magnolia 5.4 错误(5.4.1 也受到影响),由于其文件系统性质,仅在 Windows 上遇到。

标签: java content-management-system magnolia


【解决方案1】:

在我看来像MAGNOLIA-6333。在解决此问题之前,您现在无能为力。 OTOH 从 jira 的报告中看起来发布仍然有效。你也一样吗?如果没有,您究竟想发布什么?

【讨论】:

  • 问题是我创建的。 :-)
  • 大声笑,对不起,如果你在不同的地方使用不同的名字,很难把这些点联系起来。据我所知,资源加载器出于某种原因试图使用内容版本的标识符并使​​用它来定位文件系统中的文件。为什么?没有线索,但即使路径有效,它也无法成功。但是,我未能重现相同的问题,因此如果您可以提供一些有关如何重现它的步骤,这将有所帮助。发布内容是演示的一部分还是您自己的内容时会发生这种情况吗?在 5.4 的最终版本上还是在一些早期的里程碑版本上? ...
  • 如果您尝试下载 Magnolia 捆绑包(没有 poms 没有父母只是他们与 tomcat 捆绑的演示),则 5.4 正在发布版本中。 documentation.magnolia-cms.com/display/DOCS/… 这产生了同样的错误,我在通过带有父包的 maven 配置我的项目时遇到了同样的错误。所以我可以理解我在某个地方搞砸了,但我不明白官方预构建的应用程序如何拥有这个堆栈跟踪。事实上,我什至没有参考 5.4 的有效工作版本,所以我很难修复它。我可能会尝试在 lubuntu 上运行它..
  • 同时...升级到缓存模块 5.4.2(以及整个 Magnolia 到 5.4.1)...两者都可以在 nexus.magnolia-cms.com 上找到。或者,在 Windows 上使用 Java 8 而不是 Java 7 也应该可以防止该错误。
猜你喜欢
  • 2019-06-16
  • 2018-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多