【发布时间】:2020-10-15 09:39:48
【问题描述】:
我无法控制源代码的旧 EJB 有问题,没有源代码,只有 ejb jar。他们出生在 weblogic 5 中。
我们正在迁移到 weblogic 12c,然后当我部署时,EJB 检查器给了我一些合规性 ejb 错误。
我一直在调查班级……
[从 ......product/Oracle_Home/wlserver/modules/com.oracle.weblogic.ejb.jar 加载 weblogic.ejb.container.compliance.EJBComplianceChecker强>]
反编译,我发现了这个....
public final class EJBComplianceChecker
extends BaseComplianceChecker
implements ComplianceChecker, PlatformConstants
{
public static final boolean isNeedCheck = Boolean.getBoolean("ignoreEJBChecker");
static final ComplianceChecker INSTANCE = new EJBComplianceChecker();
public void checkDeploymentInfo(DeploymentInfo di)
throws ErrorCollectionException
{
if (isNeedCheck) {
return;
}
Set<Class<?>> deploymentInfoCheckers = new HashSet();
Object interceptorChecker = null;
Object[] relationshipCheckers = null;
for (BeanInfo bi : di.getBeanInfos()) ....
我认为这可能是某种部署配置,但我没有找到有关它的信息...
public static final boolean isNeedCheck = Boolean.getBoolean("ignoreEJBChecker");
它控制值并让它检查或不检查。
if (isNeedCheck) {
return;
}
谢谢
【问题讨论】:
-
Boolean.getBoolean() 从系统 proroerty 中读取值,然后您可以尝试在服务器的命令行中设置系统属性:-DignoreEJBChecker=true
标签: deployment ejb weblogic