Program: 28280
Project: 28280
Buggy source:
/** 
 * <p> This handler creates a Admin Object Resource
 */
@Handler(id="String_Node_Str",input={@HandlerInput(name="String_Node_Str",type=Boolean.class),@HandlerInput(name="String_Node_Str",type=Map.class),@HandlerInput(name="String_Node_Str",type=Map.class)},output={@HandlerOutput(name="String_Node_Str",type=Map.class)}) public static void getAdminObjectResourceWizard(HandlerContext handlerCtx){
  Boolean reload=(Boolean)handlerCtx.getInputValue("String_Node_Str");
  Map attrMap=(Map)handlerCtx.getInputValue("String_Node_Str");
  Map currentMap=(Map)handlerCtx.getInputValue("String_Node_Str");
  String name=null;
  String resAdapter=null;
  String resType=null;
  String className=null;
  if (attrMap == null) {
    attrMap=new HashMap();
  }
  if (((reload == null) || (!reload)) && (currentMap != null)) {
    name=(String)currentMap.get("String_Node_Str");
    resAdapter=(String)currentMap.get("String_Node_Str");
    resType=(String)currentMap.get("String_Node_Str");
    className=(String)currentMap.get("String_Node_Str");
    attrMap.putAll(currentMap);
  }
 else {
    if (attrMap != null) {
      name=(String)attrMap.get("String_Node_Str");
      resAdapter=(String)attrMap.get("String_Node_Str");
      resType=(String)attrMap.get("String_Node_Str");
      className=(String)attrMap.get("String_Node_Str");
    }
  }
  if (resAdapter != null) {
    resAdapter=resAdapter.trim();
  }
  if (GuiUtil.isEmpty(resAdapter) && Boolean.parseBoolean((String)GuiUtil.getSessionValue("String_Node_Str"))) {
    resAdapter="String_Node_Str";
  }
  attrMap.put("String_Node_Str",name);
  attrMap.put("String_Node_Str",resType);
  attrMap.put("String_Node_Str",resAdapter);
  attrMap.put("String_Node_Str",className);
  handlerCtx.setOutputValue("String_Node_Str",attrMap);
}

Fixed version (ground truth):
/** 
 * <p> This handler creates a Admin Object Resource
 */
@Handler(id="String_Node_Str",input={@HandlerInput(name="String_Node_Str",type=Boolean.class),@HandlerInput(name="String_Node_Str",type=Map.class),@HandlerInput(name="String_Node_Str",type=Map.class)},output={@HandlerOutput(name="String_Node_Str",type=Map.class)}) public static void getAdminObjectResourceWizard(HandlerContext handlerCtx){
  Boolean reload=(Boolean)handlerCtx.getInputValue("String_Node_Str");
  Map attrMap=(Map)handlerCtx.getInputValue("String_Node_Str");
  Map currentMap=(Map)handlerCtx.getInputValue("String_Node_Str");
  String name=null;
  String resAdapter=null;
  String resType=null;
  String className=null;
  if (attrMap == null) {
    attrMap=new HashMap();
  }
  if (((reload == null) || (!reload)) && (currentMap != null)) {
    name=(String)currentMap.get("String_Node_Str");
    resAdapter=(String)currentMap.get("String_Node_Str");
    resType=(String)currentMap.get("String_Node_Str");
    className=(String)currentMap.get("String_Node_Str");
    attrMap.putAll(currentMap);
  }
 else {
    name=(String)attrMap.get("String_Node_Str");
    resAdapter=(String)attrMap.get("String_Node_Str");
    resType=(String)attrMap.get("String_Node_Str");
    className=(String)attrMap.get("String_Node_Str");
  }
  if (resAdapter != null) {
    resAdapter=resAdapter.trim();
  }
  if (GuiUtil.isEmpty(resAdapter) && Boolean.parseBoolean((String)GuiUtil.getSessionValue("String_Node_Str"))) {
    resAdapter="String_Node_Str";
  }
  attrMap.put("String_Node_Str",name);
  attrMap.put("String_Node_Str",resType);
  attrMap.put("String_Node_Str",resAdapter);
  attrMap.put("String_Node_Str",className);
  handlerCtx.setOutputValue("String_Node_Str",attrMap);
}