InvalidPathException struts2

时间:2017-10-19 09:38:22

标签: struts2

我使用Intellj Idea(版本:2017.2.4)作为My Java IDE,并将其部署在Tomcat(版本:9.0.1)上。这是一个简单的Struts2(版本:2.5.13)项目。 我成功部署了项目,当我打开index.jsp时。出现了这个问题。

HTTP Status 500 – Internal Server Error

Type Exception Report

Message Illegal char <:> at index 3: jar:file:\D:\homework\struct\ideas\20171019exp3\out\artifacts\20171019exp3_war_exploded\WEB-INF\lib\struts2-core-2.5.13.jar

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

java.nio.file.InvalidPathException: Illegal char <:> at index 3: jar:file:\D:\homework\struct\ideas\20171019exp3\out\artifacts\20171019exp3_war_exploded\WEB-INF\lib\struts2-core-2.5.13.jar
    java.base/sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
    java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
    java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
    java.base/sun.nio.fs.WindowsPath.parse(WindowsPath.java:92)
    java.base/sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:229)
    java.base/java.io.File.toPath(File.java:2300)
    java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:951)
    java.base/java.util.zip.ZipFile.<init>(ZipFile.java:216)
    java.base/java.util.zip.ZipFile.<init>(ZipFile.java:148)
    java.base/java.util.jar.JarFile.<init>(JarFile.java:324)
    java.base/java.util.jar.JarFile.<init>(JarFile.java:295)
    java.base/java.util.jar.JarFile.<init>(JarFile.java:234)
    com.opensymphony.xwork2.util.fs.JarEntryRevision.needsReloading(JarEntryRevision.java:73)
    com.opensymphony.xwork2.util.fs.DefaultFileManager.fileNeedsReloading(DefaultFileManager.java:62)
    com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.needsReload(XmlConfigurationProvider.java:425)
    org.apache.struts2.config.StrutsXmlConfigurationProvider.needsReload(StrutsXmlConfigurationProvider.java:163)
    com.opensymphony.xwork2.config.ConfigurationManager.needReloadContainerProviders(ConfigurationManager.java:208)
    com.opensymphony.xwork2.config.ConfigurationManager.conditionalReload(ConfigurationManager.java:174)
    com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:69)
    org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:960)
    org.apache.struts2.dispatcher.ExecuteOperations.executeStaticResourceRequest(ExecuteOperations.java:59)
    org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:130)
Note The full stack trace of the root cause is available in the server logs.

Apache Tomcat/9.0.1

它说Struts2的lib出了问题。但是我从Struts2的官方网站上得到了它们。 我现在不知道怎么回事。帮帮我。

2 个答案:

答案 0 :(得分:0)

这将在Struts 2.5.14中修复。请参阅this jira ticket

答案 1 :(得分:0)

您应该使用与tomcat9.1兼容的Java,它可能是JDK1.8 并且还使用与JDK 1.8兼容的Struts2.0的JARS 因为当您使用与JAVA不兼容的JAR时,会出现此错误