Program: 84589
Project: 84589
Buggy source:
/** 
 * The onSubmit function receives the form/command object that was modified by the input form and saves it to the db
 * @see org.springframework.web.servlet.mvc.SimpleFormController#onSubmit(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,java.lang.Object,org.springframework.validation.BindException)
 */
protected ModelAndView onSubmit(HttpServletRequest request,HttpServletResponse response,Object obj,BindException errors) throws Exception {
  HttpSession httpSession=request.getSession();
  String view=getFormView();
  if (Context.isAuthenticated()) {
    String[] conceptClassList=request.getParameterValues("String_Node_Str");
    AdministrationService as=Context.getAdministrationService();
    ConceptService cs=Context.getConceptService();
    String success="String_Node_Str";
    String error="String_Node_Str";
    MessageSourceAccessor msa=getMessageSourceAccessor();
    String deleted=msa.getMessage("String_Node_Str");
    String notDeleted=msa.getMessage("String_Node_Str");
    for (    String cc : conceptClassList) {
      try {
        as.deleteConceptClass(cs.getConceptClass(Integer.valueOf(cc)));
        if (!success.equals("String_Node_Str"))         success+="String_Node_Str";
        success+=cc + "String_Node_Str" + deleted;
      }
 catch (      APIException e) {
        log.warn("String_Node_Str",e);
        if (!error.equals("String_Node_Str"))         error+="String_Node_Str";
        error+=cc + "String_Node_Str" + notDeleted;
      }
    }
    view=getSuccessView();
    if (!success.equals("String_Node_Str"))     httpSession.setAttribute(WebConstants.OPENMRS_MSG_ATTR,success);
    if (!error.equals("String_Node_Str"))     httpSession.setAttribute(WebConstants.OPENMRS_ERROR_ATTR,error);
  }
  return new ModelAndView(new RedirectView(view));
}

Fixed version (ground truth):
/** 
 * The onSubmit function receives the form/command object that was modified by the input form and saves it to the db
 * @see org.springframework.web.servlet.mvc.SimpleFormController#onSubmit(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,java.lang.Object,org.springframework.validation.BindException)
 */
protected ModelAndView onSubmit(HttpServletRequest request,HttpServletResponse response,Object obj,BindException errors) throws Exception {
  HttpSession httpSession=request.getSession();
  String view=getFormView();
  if (Context.isAuthenticated()) {
    String[] conceptClassList=request.getParameterValues("String_Node_Str");
    ConceptService cs=Context.getConceptService();
    String success="String_Node_Str";
    String error="String_Node_Str";
    MessageSourceAccessor msa=getMessageSourceAccessor();
    String deleted=msa.getMessage("String_Node_Str");
    String notDeleted=msa.getMessage("String_Node_Str");
    for (    String cc : conceptClassList) {
      try {
        cs.purgeConceptClass(cs.getConceptClass(Integer.valueOf(cc)));
        if (!success.equals("String_Node_Str"))         success+="String_Node_Str";
        success+=cc + "String_Node_Str" + deleted;
      }
 catch (      APIException e) {
        log.warn("String_Node_Str",e);
        if (!error.equals("String_Node_Str"))         error+="String_Node_Str";
        error+=cc + "String_Node_Str" + notDeleted;
      }
    }
    view=getSuccessView();
    if (!success.equals("String_Node_Str"))     httpSession.setAttribute(WebConstants.OPENMRS_MSG_ATTR,success);
    if (!error.equals("String_Node_Str"))     httpSession.setAttribute(WebConstants.OPENMRS_ERROR_ATTR,error);
  }
  return new ModelAndView(new RedirectView(view));
}