【发布时间】:2016-11-30 11:42:38
【问题描述】:
我有 2 个 .war 文件。
在第一场战争中,在 WEB-INF/classes/com/my 下有一个 BatchTriggerBuildServlet.class
在第 2 场战争中,我在其 web.xml 中有以下内容(在其 WEB-INF 中) (对战争 #1 中的一个类的引用):
<web-app id="WebApp">
<!-- other stuff -->
<servlet>
<servlet-name>BatchTriggerBuildServlet</servlet-name>
<display-name>BatchTriggerBuildServlet</display-name>
<servlet-class>com.my.BatchTriggerBuildServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>BatchTriggerBuildServlet</servlet-name>
<url-pattern>/BatchTriggerBuildServlet</url-pattern>
</servlet-mapping>
<!-- other stuff -->
</web-app>
这部署在 Wildfly 10 中。 我在包含 .ear 的 META-INF 文件夹中也有一个 jboss-deployment-structure.xml,其中包含以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<!-- Make sub deployments NOT isolated by default, so they can see each others classes without a Class-Path entry -->
<ear-subdeployments-isolated>false</ear-subdeployments-isolated>
</jboss-deployment-structure>
这是合法的吗?因为当我尝试部署耳朵时,我得到了上述类的 ClassNotFoundException 以及它的消息
"Failed to start service ... from [Module "<my ear name>.<my war #2 name>:main" from Service Module Loader]"
有没有办法让它工作? 提前致谢。
【问题讨论】:
标签: java jakarta-ee classloader wildfly ear