首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我的操作位于war文件的jar文件中,并且Struts2被部署为Wildfly模块时,Struts2找不到我的操作

当我的操作位于war文件的jar文件中,并且Struts2被部署为Wildfly模块时,Struts2找不到我的操作
EN

Stack Overflow用户
提问于 2019-11-27 05:59:55
回答 1查看 155关注 0票数 0

我正在使用Wildfly,并且已经将Struts2部署为一个模块。我将我的project.war文件部署到standalone/deployments中。在project.war/WEB-INF/lib中有一个project-web.jar文件,其中包含我的Struts2操作。我使用的是约定插件。在我的struts2.xml中,我有以下内容:

代码语言:javascript
复制
<constant name="struts.convention.action.includeJars" value=".*?/project-web.*?jar(!/)?"/>
<constant name="struts.convention.exclude.parentClassLoader" value="true" />
<constant name="struts.convention.action.fileProtocols" value="file,jar,zip"/>

我得到的错误包括

代码语言:javascript
复制
2019-11-26 13:21:01,511 WARN  [com.opensymphony.xwork2.util.fs.DefaultFileManager] (default task-6) Could not normalize URL [vfs:.../wildfly-10.1.0.Final/bin/content/project-war-0.0.1.war] to file protocol!
2019-11-26 13:21:01,520 WARN  [org.apache.struts2.convention.PackageBasedActionConfigBuilder] (default task-6) The includeJars pattern [.*?/project-web.*?jar(!/)?] did not match any jars in the classpath
2019-11-26 13:21:01,523 ERROR [com.opensymphony.xwork2.util.ResolverUtil] (default task-6) Could not search jar file '...\wildfly-10.1.0.Final\bin\content\project-0.0.1.war\WEB-INF\lib\project-web-0.0.1.jar\com\company\project\actions' for classes matching criteria: org.apache.struts2.config.ClasspathPackageProvider$1@606e8501 due to an IOException: java.io.FileNotFoundException: ...\wildfly-10.1.0.Final\bin\content\project-0.0.1.war\WEB-INF\lib\project-web-0.0.1.jar\com\company\project\actions (The system cannot find the path specified)

虽然Wildfly中没有bin\content文件夹,但我认为它与JBoss vfs有关。

请注意,当我使用project.war而不是作为模块部署Struts2时,webapp可以正常工作。

为什么Struts2找不到我的操作?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-07 02:48:25

似乎早期版本的Struts2在JBoss的VFS上有问题。我从2.3.24升级到2.5.20,这似乎让我超过了那个点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59059987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档