Program: 65512
Project: 65512
Buggy source:
public ClassDescriptor buildLoginConfigDescriptor(){
  XMLDescriptor descriptor=new XMLDescriptor();
  descriptor.setJavaClass(LoginConfig.class);
  descriptor.getInheritancePolicy().setClassIndicatorField(new XMLField("String_Node_Str"));
  descriptor.getInheritancePolicy().addClassIndicator(EISLoginConfig.class,"String_Node_Str");
  descriptor.getInheritancePolicy().addClassIndicator(XMLLoginConfig.class,"String_Node_Str");
  descriptor.getInheritancePolicy().addClassIndicator(DatabaseLoginConfig.class,"String_Node_Str");
  XMLDirectMapping platformClassMapping=new XMLDirectMapping();
  platformClassMapping.setAttributeName("String_Node_Str");
  platformClassMapping.setGetMethodName("String_Node_Str");
  platformClassMapping.setSetMethodName("String_Node_Str");
  platformClassMapping.setXPath("String_Node_Str");
  platformClassMapping.setConverter(new Converter(){
    private Map platformList;
    private String oldPrefix="String_Node_Str";
    private String newPrefix="String_Node_Str";
    public Object convertObjectValueToDataValue(    Object objectValue,    Session session){
      return objectValue;
    }
    public Object convertDataValueToObjectValue(    Object dataValue,    Session session){
      if (dataValue == null) {
        return null;
      }
      if (((String)dataValue).startsWith(oldPrefix)) {
        dataValue=((String)dataValue).replaceFirst(oldPrefix,newPrefix);
      }
      Object result=platformList.get(dataValue);
      if (result == null) {
        return dataValue;
      }
 else {
        return result;
      }
    }
    public boolean isMutable(){
      return false;
    }
    public void initialize(    DatabaseMapping mapping,    Session session){
      this.platformList=new HashMap();
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
    }
  }
);
  descriptor.addMapping(platformClassMapping);
  XMLDirectMapping usernameMapping=new XMLDirectMapping();
  usernameMapping.setAttributeName("String_Node_Str");
  usernameMapping.setGetMethodName("String_Node_Str");
  usernameMapping.setSetMethodName("String_Node_Str");
  usernameMapping.setXPath("String_Node_Str");
  descriptor.addMapping(usernameMapping);
  XMLDirectMapping encryptionClassMapping=new XMLDirectMapping();
  encryptionClassMapping.setAttributeName("String_Node_Str");
  encryptionClassMapping.setGetMethodName("String_Node_Str");
  encryptionClassMapping.setSetMethodName("String_Node_Str");
  encryptionClassMapping.setXPath("String_Node_Str");
  encryptionClassMapping.setNullValue(ENCRYPTION_CLASS_DEFAULT);
  descriptor.addMapping(encryptionClassMapping);
  XMLDirectMapping passwordMapping=new XMLDirectMapping();
  passwordMapping.setAttributeName("String_Node_Str");
  passwordMapping.setGetMethodName("String_Node_Str");
  passwordMapping.setSetMethodName("String_Node_Str");
  passwordMapping.setXPath("String_Node_Str");
  descriptor.addMapping(passwordMapping);
  XMLDirectMapping tableQualifierMapping=new XMLDirectMapping();
  tableQualifierMapping.setAttributeName("String_Node_Str");
  tableQualifierMapping.setGetMethodName("String_Node_Str");
  tableQualifierMapping.setSetMethodName("String_Node_Str");
  tableQualifierMapping.setXPath("String_Node_Str");
  descriptor.addMapping(tableQualifierMapping);
  XMLDirectMapping externalConnectionPoolMapping=new XMLDirectMapping();
  externalConnectionPoolMapping.setAttributeName("String_Node_Str");
  externalConnectionPoolMapping.setGetMethodName("String_Node_Str");
  externalConnectionPoolMapping.setSetMethodName("String_Node_Str");
  externalConnectionPoolMapping.setXPath("String_Node_Str");
  externalConnectionPoolMapping.setNullValue(Boolean.valueOf(EXTERNAL_CONNECTION_POOL_DEFAULT));
  descriptor.addMapping(externalConnectionPoolMapping);
  XMLDirectMapping externalTransactionControllerMapping=new XMLDirectMapping();
  externalTransactionControllerMapping.setAttributeName("String_Node_Str");
  externalTransactionControllerMapping.setGetMethodName("String_Node_Str");
  externalTransactionControllerMapping.setSetMethodName("String_Node_Str");
  externalTransactionControllerMapping.setXPath("String_Node_Str");
  externalTransactionControllerMapping.setNullValue(Boolean.valueOf(EXTERNAL_TRANSACTION_CONTROLLER_DEFAULT));
  descriptor.addMapping(externalTransactionControllerMapping);
  XMLCompositeObjectMapping sequencingMapping=new XMLCompositeObjectMapping();
  sequencingMapping.setAttributeName("String_Node_Str");
  sequencingMapping.setSetMethodName("String_Node_Str");
  sequencingMapping.setGetMethodName("String_Node_Str");
  sequencingMapping.setReferenceClass(SequencingConfig.class);
  sequencingMapping.setXPath("String_Node_Str");
  descriptor.addMapping(sequencingMapping);
  XMLCompositeCollectionMapping propertiesMapping=new XMLCompositeCollectionMapping();
  propertiesMapping.setReferenceClass(PropertyConfig.class);
  propertiesMapping.setAttributeName("String_Node_Str");
  propertiesMapping.setGetMethodName("String_Node_Str");
  propertiesMapping.setSetMethodName("String_Node_Str");
  propertiesMapping.setXPath("String_Node_Str");
  descriptor.addMapping(propertiesMapping);
  return descriptor;
}

Fixed version (ground truth):
public ClassDescriptor buildLoginConfigDescriptor(){
  XMLDescriptor descriptor=new XMLDescriptor();
  descriptor.setJavaClass(LoginConfig.class);
  descriptor.getInheritancePolicy().setClassIndicatorField(new XMLField("String_Node_Str"));
  descriptor.getInheritancePolicy().addClassIndicator(EISLoginConfig.class,"String_Node_Str");
  descriptor.getInheritancePolicy().addClassIndicator(XMLLoginConfig.class,"String_Node_Str");
  descriptor.getInheritancePolicy().addClassIndicator(DatabaseLoginConfig.class,"String_Node_Str");
  XMLDirectMapping platformClassMapping=new XMLDirectMapping();
  platformClassMapping.setAttributeName("String_Node_Str");
  platformClassMapping.setGetMethodName("String_Node_Str");
  platformClassMapping.setSetMethodName("String_Node_Str");
  platformClassMapping.setXPath("String_Node_Str");
  platformClassMapping.setConverter(new Converter(){
    private Map platformList;
    private String oldPrefix="String_Node_Str";
    private String newPrefix="String_Node_Str";
    private String oldOxmPrefix=oldPrefix + "String_Node_Str";
    private String newOxmPrefix=newPrefix + "String_Node_Str";
    public Object convertObjectValueToDataValue(    Object objectValue,    Session session){
      return objectValue;
    }
    public Object convertDataValueToObjectValue(    Object dataValue,    Session session){
      if (dataValue == null) {
        return null;
      }
      if (((String)dataValue).startsWith(oldPrefix)) {
        if (((String)dataValue).startsWith(oldOxmPrefix)) {
          dataValue=((String)dataValue).replaceFirst(oldOxmPrefix,newOxmPrefix);
        }
 else {
          dataValue=((String)dataValue).replaceFirst(oldPrefix,newPrefix);
        }
      }
      Object result=platformList.get(dataValue);
      if (result == null) {
        return dataValue;
      }
 else {
        return result;
      }
    }
    public boolean isMutable(){
      return false;
    }
    public void initialize(    DatabaseMapping mapping,    Session session){
      this.platformList=new HashMap();
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
      this.platformList.put("String_Node_Str","String_Node_Str");
    }
  }
);
  descriptor.addMapping(platformClassMapping);
  XMLDirectMapping usernameMapping=new XMLDirectMapping();
  usernameMapping.setAttributeName("String_Node_Str");
  usernameMapping.setGetMethodName("String_Node_Str");
  usernameMapping.setSetMethodName("String_Node_Str");
  usernameMapping.setXPath("String_Node_Str");
  descriptor.addMapping(usernameMapping);
  XMLDirectMapping encryptionClassMapping=new XMLDirectMapping();
  encryptionClassMapping.setAttributeName("String_Node_Str");
  encryptionClassMapping.setGetMethodName("String_Node_Str");
  encryptionClassMapping.setSetMethodName("String_Node_Str");
  encryptionClassMapping.setXPath("String_Node_Str");
  encryptionClassMapping.setNullValue(ENCRYPTION_CLASS_DEFAULT);
  descriptor.addMapping(encryptionClassMapping);
  XMLDirectMapping passwordMapping=new XMLDirectMapping();
  passwordMapping.setAttributeName("String_Node_Str");
  passwordMapping.setGetMethodName("String_Node_Str");
  passwordMapping.setSetMethodName("String_Node_Str");
  passwordMapping.setXPath("String_Node_Str");
  descriptor.addMapping(passwordMapping);
  XMLDirectMapping tableQualifierMapping=new XMLDirectMapping();
  tableQualifierMapping.setAttributeName("String_Node_Str");
  tableQualifierMapping.setGetMethodName("String_Node_Str");
  tableQualifierMapping.setSetMethodName("String_Node_Str");
  tableQualifierMapping.setXPath("String_Node_Str");
  descriptor.addMapping(tableQualifierMapping);
  XMLDirectMapping externalConnectionPoolMapping=new XMLDirectMapping();
  externalConnectionPoolMapping.setAttributeName("String_Node_Str");
  externalConnectionPoolMapping.setGetMethodName("String_Node_Str");
  externalConnectionPoolMapping.setSetMethodName("String_Node_Str");
  externalConnectionPoolMapping.setXPath("String_Node_Str");
  externalConnectionPoolMapping.setNullValue(Boolean.valueOf(EXTERNAL_CONNECTION_POOL_DEFAULT));
  descriptor.addMapping(externalConnectionPoolMapping);
  XMLDirectMapping externalTransactionControllerMapping=new XMLDirectMapping();
  externalTransactionControllerMapping.setAttributeName("String_Node_Str");
  externalTransactionControllerMapping.setGetMethodName("String_Node_Str");
  externalTransactionControllerMapping.setSetMethodName("String_Node_Str");
  externalTransactionControllerMapping.setXPath("String_Node_Str");
  externalTransactionControllerMapping.setNullValue(Boolean.valueOf(EXTERNAL_TRANSACTION_CONTROLLER_DEFAULT));
  descriptor.addMapping(externalTransactionControllerMapping);
  XMLCompositeObjectMapping sequencingMapping=new XMLCompositeObjectMapping();
  sequencingMapping.setAttributeName("String_Node_Str");
  sequencingMapping.setSetMethodName("String_Node_Str");
  sequencingMapping.setGetMethodName("String_Node_Str");
  sequencingMapping.setReferenceClass(SequencingConfig.class);
  sequencingMapping.setXPath("String_Node_Str");
  descriptor.addMapping(sequencingMapping);
  XMLCompositeCollectionMapping propertiesMapping=new XMLCompositeCollectionMapping();
  propertiesMapping.setReferenceClass(PropertyConfig.class);
  propertiesMapping.setAttributeName("String_Node_Str");
  propertiesMapping.setGetMethodName("String_Node_Str");
  propertiesMapping.setSetMethodName("String_Node_Str");
  propertiesMapping.setXPath("String_Node_Str");
  descriptor.addMapping(propertiesMapping);
  return descriptor;
}