Program: 30334
Project: 30334
Buggy source:
@Override public void execute(final AdminCommandContext context){
  final ActionReport result=context.getActionReport();
  final InjectionManager manager=new InjectionManager();
  CrudResolver resolver=habitat.getComponent(resolverType);
  final InjectionResolver paramResolver=getInjectionResolver();
  manager.inject(resolver,paramResolver);
  final ConfigBeanProxy parentBean=resolver.resolve(context,parentType);
  if (parentBean == null) {
    String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",resolver.getClass().toString(),parentType,targetType);
    result.failure(logger,msg);
    return;
  }
  try {
    ConfigSupport.apply(new SingleConfigCode<ConfigBeanProxy>(){
      @Override public Object run(      ConfigBeanProxy writableParent) throws PropertyVetoException, TransactionFailure {
        ConfigBeanProxy childBean=writableParent.createChild(targetType);
        manager.inject(childBean,targetType,getInjectionResolver());
        String name=null;
        if (Named.class.isAssignableFrom(targetType)) {
          name=((Named)childBean).getName();
        }
        if (name != null) {
          Object cbp=habitat.getComponent(targetType.getName(),name);
          if (cbp != null) {
            String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",targetType.getSimpleName(),name);
            result.failure(logger,msg);
            throw new TransactionFailure(msg);
          }
        }
        try {
          if (targetMethod.getParameterTypes().length == 0) {
            Object result=targetMethod.invoke(writableParent);
            if (result instanceof List) {
              List<ConfigBeanProxy> children=List.class.cast(result);
              children.add(childBean);
            }
          }
 else {
            targetMethod.invoke(writableParent,childBean);
          }
        }
 catch (        Exception e) {
          String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",targetMethod.toString(),e.toString());
          result.failure(logger,msg,e);
          throw new TransactionFailure(msg,e);
        }
        CreationDecorator<ConfigBeanProxy> decorator=habitat.getComponent(create.decorator());
        if (decorator == null) {
          String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",create.decorator().toString());
          result.failure(logger,msg);
          throw new TransactionFailure(msg);
        }
 else {
          manager.inject(decorator,paramResolver);
          decorator.decorate(context,childBean);
        }
        return childBean;
      }
    }
,parentBean);
  }
 catch (  TransactionFailure e) {
    String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",getRootCauseMessage(e));
    result.failure(logger,msg);
  }
}

Fixed version (ground truth):
@Override public void execute(final AdminCommandContext context){
  final ActionReport result=context.getActionReport();
  final InjectionManager manager=new InjectionManager();
  CrudResolver resolver=habitat.getComponent(resolverType);
  final InjectionResolver paramResolver=getInjectionResolver();
  manager.inject(resolver,paramResolver);
  final ConfigBeanProxy parentBean=resolver.resolve(context,parentType);
  if (parentBean == null) {
    String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",resolver.getClass().toString(),parentType,targetType);
    result.failure(logger,msg);
    return;
  }
  try {
    ConfigSupport.apply(new SingleConfigCode<ConfigBeanProxy>(){
      @Override public Object run(      ConfigBeanProxy writableParent) throws PropertyVetoException, TransactionFailure {
        ConfigBeanProxy childBean=writableParent.createChild(targetType);
        manager.inject(childBean,targetType,getInjectionResolver());
        String name=null;
        if (Named.class.isAssignableFrom(targetType)) {
          name=((Named)childBean).getName();
        }
        if (name != null) {
          Object cbp=habitat.getComponent(targetType.getName(),name);
          if (cbp != null) {
            String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",targetType.getSimpleName(),name);
            result.failure(logger,msg);
            throw new TransactionFailure(msg);
          }
        }
        try {
          if (targetMethod.getParameterTypes().length == 0) {
            Object result=targetMethod.invoke(writableParent);
            if (result instanceof List) {
              List<ConfigBeanProxy> children=List.class.cast(result);
              children.add(childBean);
            }
          }
 else {
            targetMethod.invoke(writableParent,childBean);
          }
        }
 catch (        Exception e) {
          String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",targetMethod.toString(),e.toString());
          result.failure(logger,msg,e);
          throw new TransactionFailure(msg,e);
        }
        CreationDecorator<ConfigBeanProxy> decorator=null;
        if (create != null) {
          decorator=habitat.getComponent(create.decorator());
        }
        if (decorator == null) {
          String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",create == null ? "String_Node_Str" : create.decorator().toString());
          result.failure(logger,msg);
          throw new TransactionFailure(msg);
        }
 else {
          manager.inject(decorator,paramResolver);
          decorator.decorate(context,childBean);
        }
        return childBean;
      }
    }
,parentBean);
  }
 catch (  TransactionFailure e) {
    String msg=localStrings.getLocalString(GenericCrudCommand.class,"String_Node_Str","String_Node_Str",getRootCauseMessage(e));
    result.failure(logger,msg);
  }
}