我一直在进行 Enterprise ARchive EAR 从 WebLogic 到 Wildfly 10 的迁移过程。
该应用由下面列出的多层组成:
***app-commun
***app-dao
***app-domain
***app-ear
***app-ejb
***app-manager
***app-parent
***app-service
***app-web
以下是基于每个pom配置的每个层的依赖关系:
***app-dao
***app-commun
***app-domain
***app-commun
***app-ejb
***app-service
***app-commun
***app-dao
***app-manager
***app-domaine
***app-service
***app-manager
***app-dao
EAR包含三个组件: 2次战争和app-ejb.jar 。
迁移时间很长,但是很成功。
迁移步骤:
从 JAVA 6迁移到JAVA 8
从 EJB 2迁移到EJB 3
在部署阶段,我们尝试在生成 EAR 后直接部署Directley 在 Wildfly 的 deployments 目录中,它像魅力一样工作,但是出于维护的原因,我们有义务通过Eclipse著名的在服务器上运行进行部署>按钮,在部署过程中它始终崩溃在同一位置。
异常跟踪:
15:35:57,173 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001: Failed to start service jboss.deployment.subunit."***-ear-13.1.0-SNAPSHOT.ear"."***-ejb.jar".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.subunit."***-ear-13.1.0-SNAPSHOT.ear"."***-ejb.jar".POST_MODULE: WFLYSRV0153: Failed to process phase POST_MODULE of subdeployment "***-ejb.jar" of deployment "***-ear-13.1.0-SNAPSHOT.ear"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:154)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.RuntimeException: WFLYSRV0177: Error getting reflective information for class ***.***.***.app.service.persistence.PersistenceDonneesMIFSMBean with ClassLoader ModuleClassLoader for Module "deployment.***-ear-13.1.0-SNAPSHOT.ear.***-ejb.jar:main" from Service Module Loader
at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:70)
at org.jboss.as.ee.metadata.MethodAnnotationAggregator.runtimeAnnotationInformation(MethodAnnotationAggregator.java:57)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.handleAnnotations(InterceptorAnnotationProcessor.java:106)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.processComponentConfig(InterceptorAnnotationProcessor.java:91)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.deploy(InterceptorAnnotationProcessor.java:76)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147)
... 5 more
Caused by: java.lang.NoClassDefFoundError: ***/***/***/commun/exception/metier/BusinessException
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
at java.lang.Class.getDeclaredFields(Class.java:1916)
at org.jboss.as.server.deployment.reflect.ClassReflectionIndex.<init>(ClassReflectionIndex.java:72)
at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:66)
... 10 more
Caused by: java.lang.ClassNotFoundException: ***.***.***.commun.exception.metier.BusinessException from [Module "deployment.***-ear-13.1.0-SNAPSHOT.ear.***-ejb.jar:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:198)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:363)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:351)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:93)
... 15 more
我试图通过更新 通过添加以下属性, standalone-full.xml java:ee子系统
<ear-subdeployments-isolated>false</ear-subdeployments-isolated>
声称没有找到的类存在于类路径中,但我不知道为什么 我不断遇到同样的异常。
帮助将不胜感激