Deployment 将旧EJB部署到Weblogic 12。取消激活EJB检查器

Deployment 将旧EJB部署到Weblogic 12。取消激活EJB检查器,deployment,ejb,weblogic,Deployment,Ejb,Weblogic,我遇到了老ejb的麻烦,我无法控制源代码,没有源代码,只有EJBJAR。他们出生于WebLogic5 我们正在迁移到WebLogic12c,当我部署时,EJB检查器会给我一些遵从性EJB错误 我一直在调查这门课 [已加载weblogic.ejb.container.compliance.EJBComplianceChecker来自……product/Oracle\u Home/wlserver/modules/com.Oracle.weblogic.ejb.jar] 反编译,我发现了这个 pub

我遇到了老ejb的麻烦,我无法控制源代码,没有源代码,只有EJBJAR。他们出生于WebLogic5

我们正在迁移到WebLogic12c,当我部署时,EJB检查器会给我一些遵从性EJB错误

我一直在调查这门课

[已加载weblogic.ejb.container.compliance.EJBComplianceChecker来自……product/Oracle\u Home/wlserver/modules/com.Oracle.weblogic.ejb.jar]

反编译,我发现了这个

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()) ....
它控制值,并让它检查或不检查

if (isNeedCheck) {
          return;
        }

谢谢

这似乎奏效了。我知道我看不到错误

感谢所有Emmanuel

Boolean。getBoolean()从系统程序读取值,然后您可以尝试在服务器的命令行中设置系统属性:-DignoreEJBChecker=true
if (isNeedCheck) {
          return;
        }