我们有一个“旧的”JavaEE 应用程序,我们希望将它从旧的 Sun Application Server 9.1 移植到当前的 Glassfish 3.1。我们更新了部署描述符 xml 文件(重命名它们,更新了 DocType,针对 DTD 进行了验证,仅此而已)。但是当我们尝试部署到 GF3.1 时,我们得到了这个错误:
JDO83008: CMP Compilation failed:
C:\workspace\glassfish31eclipsedefaultdomain\generated\ejb\archivetool-app-1.9.5\archivetool-ejb-1.9.5_jar\de\ems\archivetool\ejb\metadata\cd\eb\CdBean_821611534_ConcreteImpl.java:10:
cannot access de.ems.archivetool.ejb.framework.AbstractCMPBean
class file for de.ems.archivetool.ejb.framework.AbstractCMPBean not found
C:\workspace\glassfish31eclipsedefaultdomain\generated\ejb\archivetool-app-1.9.5\archivetool-ejb-1.9.5_jar\de\ems\archivetool\ejb\productdata\product\eb\ProductionLibraryBean40992531_ConcreteImpl.java:416:
cannot find symbol
symbol : class EBSBusinessException
location: package de.ems.archivetool.ejb.framework
WARNUNG: JDO83004: CMP Compilation failed. See log for details.
SCHWERWIEGEND: Exception while invoking class org.glassfish.ejb.startup.EjbDeployer prepare method
SCHWERWIEGEND: Exception while invoking class org.glassfish.javaee.full.deployment.EarDeployer prepare method
SCHWERWIEGEND: Exception while preparing the app
SCHWERWIEGEND: JDO83004: CMP Compilation failed. See log for details.
org.glassfish.deployment.common.DeploymentException: JDO83004: CMP Compilation failed. See log for details.
但是我们仍然可以部署在旧的 SUN App Server 中。
该应用程序由 4 个模块和一个构建模块组成。通常,.ear 文件由两个 EJB 模块、一个 WAR 模块和一个 JAR 模块组成,使用 Maven 构建没有问题(UnitTest 成功等)。(pom.xml和生成的application.xml)
所以,一切都很好,但是当我们尝试将应用程序部署到 GF3.1 时,我们得到“找不到类文件”错误。未找到的类在 JAR 模块中,并包含 EJB 模块的基类。
有人有起点吗?
问候, 安德烈亚斯