nus-yam/ex-repair huggingface dataset:
Program: 16145
Project: 16145
Buggy source:
@Override public void onEvent(Event event) throws Exception {
  final Component comp=event.getTarget();
  comp.removeEventListener(BinderImpl.ON_BIND_INIT,this);
  if (comp.getPage() == null) {
    return;
  }
  final Binder innerBinder=BinderUtil.getBinder(comp);
  if (innerBinder != null) {
    return;
  }
  Binder binder=BinderUtil.getBinder(comp,true);
  if (binder == null) {
    return;
  }
  if (binder instanceof AnnotateBinder) {
    new AnnotateBinderHelper(binder).initComponentBindings(comp);
  }
  binder.loadComponent(comp,true);
  if (comp.getAttribute(BinderImpl.VAR) != null)   BinderUtil.markHandling(comp,binder);
}

Fixed version (ground truth):
@Override public void onEvent(Event event) throws Exception {
  final Component comp=event.getTarget();
  comp.removeEventListener(BinderImpl.ON_BIND_INIT,this);
  if (comp.getPage() == null) {
    return;
  }
  final Binder innerBinder=BinderUtil.getBinder(comp);
  if (innerBinder != null) {
    return;
  }
  Binder binder=BinderUtil.getBinder(comp,true);
  if (binder == null) {
    return;
  }
  if (getExtension().isLifeCycleHandling(comp)) {
    return;
  }
  if (binder instanceof AnnotateBinder) {
    new AnnotateBinderHelper(binder).initComponentBindings(comp);
  }
  getExtension().markLifeCycleHandling(comp);
  binder.loadComponent(comp,true);
  if (comp.getAttribute(BinderImpl.VAR) != null)   BinderUtil.markHandling(comp,binder);
}
Program: 16146
Project: 16146
Buggy source:
private void removeBindings0(Component comp){
  final Object installed=comp.removeAttribute(BinderImpl.RENDERER_INSTALLED);
  if (installed != null) {
    BindELContext.removeModel(comp);
  }
  final Binder binder=BinderUtil.getBinder(comp);
  if (binder != null) {
    binder.removeBindings(comp);
  }
}

Fixed version (ground truth):
private void removeBindings0(Component comp){
  final Object installed=comp.removeAttribute(BinderImpl.RENDERER_INSTALLED);
  if (installed != null) {
    BindELContext.removeModel(comp);
  }
  final Binder binder=BinderUtil.getBinder(comp);
  if (binder != null) {
    binder.removeBindings(comp);
  }
  getExtension().removeLifeCycleHandling(comp);
}
Program: 16147
Project: 16147
Buggy source:
public void invalidate(){
  if (_page != null)   getAttachedUiEngine().addInvalidate(this);
}

Fixed version (ground truth):
public void invalidate(){
  if (_page != null) {
    getAttachedUiEngine().addInvalidate(this);
    notifyParentInvalidate();
  }
}
Program: 16148
Project: 16148
Buggy source:
private static DecimalFormat getLocalizedDecimalFormat(String pattern){
  final DecimalFormat df=(DecimalFormat)NumberFormat.getInstance(Locales.getCurrent());
  df.applyLocalizedPattern(pattern);
  return df;
}

Fixed version (ground truth):
private static DecimalFormat getLocalizedDecimalFormat(String pattern){
  final DecimalFormat df=(DecimalFormat)NumberFormat.getInstance(Locales.getCurrent());
  df.applyPattern(pattern);
  return df;
}
Program: 16151
Project: 16151
Buggy source:
/** 
 * Parses desktop-config. 
 */
private static void parseDesktopConfig(Configuration config,Element conf) throws Exception {
  for (Iterator it=conf.getElements("String_Node_Str").iterator(); it.hasNext(); ) {
    final Element el=(Element)it.next();
    final String uri=el.getText(true);
    if (uri.length() != 0)     config.addThemeURI(uri);
  }
  for (Iterator it=conf.getElements("String_Node_Str").iterator(); it.hasNext(); ) {
    final Element el=(Element)it.next();
    final String uri=el.getText(true);
    if (uri.length() != 0)     config.addDisabledThemeURI(uri);
  }
  Class cls=parseClass(conf,"String_Node_Str",ThemeProvider.class);
  if (cls != null) {
    if (log.debugable())     log.debug("String_Node_Str" + cls.getName());
    config.setThemeProvider((ThemeProvider)cls.newInstance());
  }
  Integer v=parseInteger(conf,"String_Node_Str",ANY_VALUE);
  if (v != null)   config.setDesktopMaxInactiveInterval(v.intValue());
  v=parseInteger(conf,"String_Node_Str",POSITIVE_ONLY);
  if (v != null)   Library.setProperty("String_Node_Str",v.toString());
  v=parseInteger(conf,"String_Node_Str",POSITIVE_ONLY);
  if (v != null)   Library.setProperty("String_Node_Str",v.toString());
  String s=conf.getElementValue("String_Node_Str",true);
  if (s != null)   config.setRepeatUuid(!"String_Node_Str".equals(s));
}

Fixed version (ground truth):
/** 
 * Parses desktop-config. 
 */
private static void parseDesktopConfig(Configuration config,Element conf) throws Exception {
  for (Iterator it=conf.getElements("String_Node_Str").iterator(); it.hasNext(); ) {
    final Element el=(Element)it.next();
    final String uri=el.getText(true);
    if (uri.length() != 0)     config.addThemeURI(uri);
  }
  for (Iterator it=conf.getElements("String_Node_Str").iterator(); it.hasNext(); ) {
    final Element el=(Element)it.next();
    final String uri=el.getText(true);
    if (uri.length() != 0)     config.addDisabledThemeURI(uri);
  }
  Class cls=null;
  if (!_customThemeProvider) {
    cls=parseClass(conf,"String_Node_Str",ThemeProvider.class);
    if (cls != null) {
      if (!cls.getName().startsWith("String_Node_Str"))       _customThemeProvider=true;
      if (log.debugable())       log.debug("String_Node_Str" + cls.getName());
      config.setThemeProvider((ThemeProvider)cls.newInstance());
    }
  }
  Integer v=parseInteger(conf,"String_Node_Str",ANY_VALUE);
  if (v != null)   config.setDesktopMaxInactiveInterval(v.intValue());
  v=parseInteger(conf,"String_Node_Str",POSITIVE_ONLY);
  if (v != null)   Library.setProperty("String_Node_Str",v.toString());
  v=parseInteger(conf,"String_Node_Str",POSITIVE_ONLY);
  if (v != null)   Library.setProperty("String_Node_Str",v.toString());
  String s=conf.getElementValue("String_Node_Str",true);
  if (s != null)   config.setRepeatUuid(!"String_Node_Str".equals(s));
}
Program: 16152
Project: 16152
Buggy source:
private void processComponentBindings0(Component comp){
  final ComponentCtrl compCtrl=(ComponentCtrl)comp;
  final List<String> props=compCtrl.getAnnotatedProperties();
  for (final Iterator<?> it=props.iterator(); it.hasNext(); ) {
    final String propName=(String)it.next();
    if (isEventProperty(propName)) {
      processCommandBinding(comp,propName);
      processGlobalCommandBinding(comp,propName);
    }
 else     if (FORM_ATTR.equals(propName)) {
      processFormBindings(comp);
    }
 else     if (CHILDREN_ATTR.equals(propName)) {
      processChildrenBindings(comp);
    }
 else     if (VIEW_MODEL_ATTR.equals(propName)) {
    }
 else     if (BINDER_ATTR.equals(propName)) {
    }
 else {
      processPropertyBindings(comp,propName);
    }
  }
  if (!BinderUtil.isHandling(comp)) {
    BinderUtil.markHandling(comp,_binder);
  }
}

Fixed version (ground truth):
private void processComponentBindings0(Component comp){
  final ComponentCtrl compCtrl=(ComponentCtrl)comp;
  final List<String> props=compCtrl.getAnnotatedProperties();
  for (final Iterator<?> it=props.iterator(); it.hasNext(); ) {
    final String propName=(String)it.next();
    if (isEventProperty(propName)) {
      processCommandBinding(comp,propName);
      processGlobalCommandBinding(comp,propName);
    }
 else     if (FORM_ATTR.equals(propName)) {
      processFormBindings(comp);
    }
 else     if (CHILDREN_ATTR.equals(propName)) {
      processChildrenBindings(comp);
    }
 else     if (VIEW_MODEL_ATTR.equals(propName)) {
    }
 else     if (BINDER_ATTR.equals(propName)) {
    }
 else {
      processPropertyBindings(comp,propName);
    }
  }
}
Program: 16153
Project: 16153
Buggy source:
public Interpreter getInterpreter(String zslang){
  zslang=(zslang != null ? zslang : _zslang).toLowerCase();
  Interpreter ip=_ips.get(zslang);
  if (ip == null) {
    if (_desktop != null && !_desktop.getWebApp().getConfiguration().isZScriptEnabled())     throw new UiException("String_Node_Str");
    ip=Interpreters.newInterpreter(zslang,this);
    _ips.put(zslang,ip);
    String script=_langdef.getInitScript(zslang);
    if (script != null) {
      if (!_impclss.isEmpty() && "String_Node_Str".equals(zslang)) {
        StringBuilder sb=new StringBuilder();
        for (        String name : _impclss)         sb.append("String_Node_Str").append(name).append("String_Node_Str");
        script+=sb.toString();
        sb=null;
      }
      ip.interpret(script,this);
    }
  }
  evalDeferredZScripts(ip,zslang);
  return ip;
}

Fixed version (ground truth):
public Interpreter getInterpreter(String zslang){
  zslang=(zslang != null ? zslang : _zslang).toLowerCase();
  Interpreter ip=_ips.get(zslang);
  if (ip == null) {
    if (_desktop != null && !_desktop.getWebApp().getConfiguration().isZScriptEnabled())     throw new UiException("String_Node_Str");
    ip=Interpreters.newInterpreter(zslang,this);
    _ips.put(zslang,ip);
    String script=_langdef.getInitScript(zslang);
    if (script != null) {
      if (_impclss != null && !_impclss.isEmpty() && "String_Node_Str".equals(zslang)) {
        StringBuilder sb=new StringBuilder();
        for (        String name : _impclss)         sb.append("String_Node_Str").append(name).append("String_Node_Str");
        script+=sb.toString();
        sb=null;
      }
      ip.interpret(script,this);
    }
  }
  evalDeferredZScripts(ip,zslang);
  return ip;
}
Program: 16154
Project: 16154
Buggy source:
private void processComponentBindings0(Component comp){
  final ComponentCtrl compCtrl=(ComponentCtrl)comp;
  final List<String> props=compCtrl.getAnnotatedProperties();
  for (final Iterator<?> it=props.iterator(); it.hasNext(); ) {
    final String propName=(String)it.next();
    if (isEventProperty(propName)) {
      processCommandBinding(comp,propName);
      processGlobalCommandBinding(comp,propName);
    }
 else     if (FORM_ATTR.equals(propName)) {
      processFormBindings(comp);
    }
 else     if (CHILDREN_ATTR.equals(propName)) {
      processChildrenBindings(comp);
    }
 else     if (VIEW_MODEL_ATTR.equals(propName)) {
    }
 else     if (BINDER_ATTR.equals(propName)) {
    }
 else {
      processPropertyBindings(comp,propName);
    }
  }
  if (!BinderUtil.isHandling(comp)) {
    BinderUtil.markHandling(comp,_binder);
  }
}

Fixed version (ground truth):
private void processComponentBindings0(Component comp){
  final ComponentCtrl compCtrl=(ComponentCtrl)comp;
  final List<String> props=compCtrl.getAnnotatedProperties();
  for (final Iterator<?> it=props.iterator(); it.hasNext(); ) {
    final String propName=(String)it.next();
    if (isEventProperty(propName)) {
      processCommandBinding(comp,propName);
      processGlobalCommandBinding(comp,propName);
    }
 else     if (FORM_ATTR.equals(propName)) {
      processFormBindings(comp);
    }
 else     if (CHILDREN_ATTR.equals(propName)) {
      processChildrenBindings(comp);
    }
 else     if (VIEW_MODEL_ATTR.equals(propName)) {
    }
 else     if (BINDER_ATTR.equals(propName)) {
    }
 else {
      processPropertyBindings(comp,propName);
    }
  }
}
Program: 16155
Project: 16155
Buggy source:
public void doAfterCompose(T comp) throws Exception {
  _binder.initAnnotatedBindings();
  new AbstractAnnotatedMethodInvoker<AfterCompose>(AfterCompose.class){
    protected boolean shouldLookupSuperclass(    AfterCompose annotation){
      return annotation.superclass();
    }
  }
.invokeMethod(_binder,getViewModelInitArgs(evalx,comp));
  BinderKeeper keeper=BinderKeeper.getInstance(comp);
  if (keeper.isRootBinder(_binder)) {
    keeper.loadComponentForAllBinders();
  }
}

Fixed version (ground truth):
public void doAfterCompose(T comp) throws Exception {
  _binder.initAnnotatedBindings();
  new AbstractAnnotatedMethodInvoker<AfterCompose>(AfterCompose.class,_afterComposeMethodCache){
    protected boolean shouldLookupSuperclass(    AfterCompose annotation){
      return annotation.superclass();
    }
  }
.invokeMethod(_binder,getViewModelInitArgs(evalx,comp));
  BinderKeeper keeper=BinderKeeper.getInstance(comp);
  if (keeper.isRootBinder(_binder)) {
    keeper.loadComponentForAllBinders();
  }
}
Program: 16156
Project: 16156
Buggy source:
public AbstractAnnotatedMethodInvoker(Class<T> annoClass){
  this.annoClass=annoClass;
}

Fixed version (ground truth):
public AbstractAnnotatedMethodInvoker(Class<T> annoClass,Map<Class<?>,List<Method>> annoMethodCache){
  this.annoClass=annoClass;
  this.annoMethodCache=annoMethodCache;
}
Program: 16157
Project: 16157
Buggy source:
public void invokeMethod(Binder binder,Map<String,Object> bindingArgs){
  Component rootComp=binder.getView();
  Object viewModel=rootComp.getAttribute(VM);
  final Class<?> vmClz=viewModel.getClass();
  List<Method> methods=getAnnotateMethods(annoClass,vmClz);
  if (methods.size() == 0)   return;
  if (bindingArgs != null) {
    bindingArgs=BindEvaluatorXUtil.evalArgs(binder.getEvaluatorX(),rootComp,bindingArgs);
  }
  for (  Method m : methods) {
    final BindContext ctx=BindContextUtil.newBindContext(binder,null,false,null,rootComp,null);
    try {
      ParamCall parCall=createParamCall(ctx,binder);
      if (bindingArgs != null) {
        parCall.setBindingArgs(bindingArgs);
      }
      parCall.call(viewModel,m);
    }
 catch (    Exception e) {
      throw new UiException(e.getMessage(),e);
    }
  }
}

Fixed version (ground truth):
public void invokeMethod(Binder binder,Map<String,Object> bindingArgs){
  Component rootComp=binder.getView();
  Object viewModel=rootComp.getAttribute(VM);
  final Class<?> vmClz=viewModel.getClass();
  List<Method> methods=getAnnotateMethods(annoClass,vmClz);
  if (methods.size() == 0)   return;
  if (bindingArgs != null) {
    bindingArgs=BindEvaluatorXUtil.evalArgs(binder.getEvaluatorX(),rootComp,bindingArgs);
  }
  for (  Method m : methods) {
    final BindContext ctx=BindContextUtil.newBindContext(binder,null,false,null,rootComp,null);
    try {
      ParamCall parCall=createParamCall(ctx,binder);
      if (bindingArgs != null) {
        parCall.setBindingArgs(bindingArgs);
      }
      parCall.call(viewModel,m);
    }
 catch (    Exception e) {
synchronized (annoMethodCache) {
        annoMethodCache.remove(vmClz);
      }
      throw new UiException(e.getMessage(),e);
    }
  }
}
Program: 16158
Project: 16158
Buggy source:
private List<Method> getAnnotateMethods(Class<T> annotationClass,Class<?> vmClass){
  List<Method> methods=new ArrayList<Method>();
  Class<?> curr=vmClass;
  String sign=null;
  Set<String> signs=new HashSet<String>();
  while (curr != null && !curr.equals(Object.class)) {
    Method currm=null;
    T annotation=curr.getAnnotation(annotationClass);
    for (    Method m : curr.getDeclaredMethods()) {
      final T i=m.getAnnotation(annotationClass);
      if (i == null)       continue;
      if (annotation != null) {
        throw new UiException("String_Node_Str" + annotationClass.getSimpleName() + "String_Node_Str"+ curr);
      }
      annotation=i;
      currm=m;
    }
    if (currm != null) {
      sign=MiscUtil.toSimpleMethodSignature(currm);
      if (signs.contains(sign)) {
        _log.warning("String_Node_Str" + "String_Node_Str" + "String_Node_Str",annotationClass.getSimpleName(),sign,vmClass);
      }
 else {
        signs.add(sign);
      }
      methods.add(0,currm);
    }
    curr=(annotation != null && shouldLookupSuperclass(annotation)) ? curr.getSuperclass() : null;
  }
  return methods;
}

Fixed version (ground truth):
private List<Method> getAnnotateMethods(Class<T> annotationClass,Class<?> vmClass){
  List<Method> methods=null;
synchronized (annoMethodCache) {
    methods=annoMethodCache.get(vmClass);
    if (methods != null)     return methods;
    methods=new ArrayList<Method>();
    Class<?> curr=vmClass;
    String sign=null;
    Set<String> signs=new HashSet<String>();
    while (curr != null && !curr.equals(Object.class)) {
      Method currm=null;
      T annotation=curr.getAnnotation(annotationClass);
      for (      Method m : curr.getDeclaredMethods()) {
        final T i=m.getAnnotation(annotationClass);
        if (i == null)         continue;
        if (annotation != null) {
          throw new UiException("String_Node_Str" + annotationClass.getSimpleName() + "String_Node_Str"+ curr);
        }
        annotation=i;
        currm=m;
      }
      if (currm != null) {
        sign=MiscUtil.toSimpleMethodSignature(currm);
        if (signs.contains(sign)) {
          _log.warning("String_Node_Str" + "String_Node_Str" + "String_Node_Str",annotationClass.getSimpleName(),sign,vmClass);
        }
 else {
          signs.add(sign);
        }
        methods.add(0,currm);
      }
      curr=(annotation != null && shouldLookupSuperclass(annotation)) ? curr.getSuperclass() : null;
    }
    methods=Collections.unmodifiableList(methods);
    annoMethodCache.put(vmClass,methods);
  }
  return methods;
}
Program: 16159
Project: 16159
Buggy source:
private void doGlobalCommandExecute(Component comp,String command,Map<String,Object> commandArgs,BindContext ctx,Set<Property> notifys){
  try {
    if (_log.debugable()) {
      _log.debug("String_Node_Str",comp,command);
    }
    doPrePhase(Phase.EXECUTE,ctx);
    final Object viewModel=getViewModel();
    Method method=getGlobalCommandMethod(viewModel.getClass(),command,_globalCommandMethodInfoProvider);
    if (method != null) {
      ParamCall parCall=createParamCall(ctx);
      if (commandArgs != null) {
        parCall.setBindingArgs(commandArgs);
      }
      parCall.call(viewModel,method);
      notifys.addAll(BindELContext.getNotifys(method,viewModel,(String)null,(Object)null,ctx));
    }
 else {
      if (_log.debugable()) {
        _log.debug("String_Node_Str",viewModel);
      }
    }
    if (_log.debugable()) {
      _log.debug("String_Node_Str",notifys);
    }
  }
  finally {
    doPostPhase(Phase.EXECUTE,ctx);
  }
}

Fixed version (ground truth):
private void doGlobalCommandExecute(Component comp,String command,Map<String,Object> commandArgs,BindContext ctx,Set<Property> notifys){
  try {
    if (_log.debugable()) {
      _log.debug("String_Node_Str",comp,command);
    }
    doPrePhase(Phase.EXECUTE,ctx);
    final Object viewModel=getViewModel();
    Method method=getCommandMethod(viewModel.getClass(),command,_globalCommandMethodInfoProvider,_globalCommandMethodCache);
    if (method != null) {
      ParamCall parCall=createParamCall(ctx);
      if (commandArgs != null) {
        parCall.setBindingArgs(commandArgs);
      }
      parCall.call(viewModel,method);
      notifys.addAll(BindELContext.getNotifys(method,viewModel,(String)null,(Object)null,ctx));
    }
 else {
      if (_log.debugable()) {
        _log.debug("String_Node_Str",viewModel);
      }
    }
    if (_log.debugable()) {
      _log.debug("String_Node_Str",notifys);
    }
  }
  finally {
    doPostPhase(Phase.EXECUTE,ctx);
  }
}
Program: 16160
Project: 16160
Buggy source:
private void doExecute(Component comp,String command,Map<String,Object> commandArgs,BindContext ctx,Set<Property> notifys){
  try {
    if (_log.debugable()) {
      _log.debug("String_Node_Str",comp,command,notifys);
    }
    doPrePhase(Phase.EXECUTE,ctx);
    final Object viewModel=getViewModel();
    Method method=getCommandMethod(viewModel.getClass(),command,_commandMethodInfoProvider);
    if (method != null) {
      ParamCall parCall=createParamCall(ctx);
      if (commandArgs != null) {
        parCall.setBindingArgs(commandArgs);
      }
      parCall.call(viewModel,method);
      notifys.addAll(BindELContext.getNotifys(method,viewModel,(String)null,(Object)null,ctx));
    }
 else {
      throw new UiException("String_Node_Str" + command + "String_Node_Str"+ viewModel);
    }
    if (_log.debugable()) {
      _log.debug("String_Node_Str",notifys);
    }
  }
  finally {
    doPostPhase(Phase.EXECUTE,ctx);
  }
}

Fixed version (ground truth):
private void doExecute(Component comp,String command,Map<String,Object> commandArgs,BindContext ctx,Set<Property> notifys){
  try {
    if (_log.debugable()) {
      _log.debug("String_Node_Str",comp,command,notifys);
    }
    doPrePhase(Phase.EXECUTE,ctx);
    final Object viewModel=getViewModel();
    Method method=getCommandMethod(viewModel.getClass(),command,_commandMethodInfoProvider,_commandMethodCache);
    if (method != null) {
      ParamCall parCall=createParamCall(ctx);
      if (commandArgs != null) {
        parCall.setBindingArgs(commandArgs);
      }
      parCall.call(viewModel,method);
      notifys.addAll(BindELContext.getNotifys(method,viewModel,(String)null,(Object)null,ctx));
    }
 else {
      throw new UiException("String_Node_Str" + command + "String_Node_Str"+ viewModel);
    }
    if (_log.debugable()) {
      _log.debug("String_Node_Str",notifys);
    }
  }
  finally {
    doPostPhase(Phase.EXECUTE,ctx);
  }
}
Program: 16161
Project: 16161
Buggy source:
private Method getCommandMethod(Class<?> clz,String command,CommandMethodInfoProvider cmdInfo){
  if (_commandMethods == null) {
    _commandMethods=new HashMap<String,CachedItem<Method>>(20);
    scan0(clz,command,cmdInfo,_commandMethods);
  }
  return getMethod0(command,_commandMethods);
}

Fixed version (ground truth):
private Method getCommandMethod(Class<?> clz,String command,CommandMethodInfoProvider cmdInfo,Map<Class<?>,Map<String,CachedItem<Method>>> cache){
  Map<String,CachedItem<Method>> methods=cache.get(clz);
synchronized (cache) {
    methods=cache.get(clz);
    if (methods == null) {
      methods=new HashMap<String,CachedItem<Method>>();
      cache.put(clz,methods);
    }
  }
  CachedItem<Method> method=null;
synchronized (methods) {
    method=methods.get(command);
    if (method != null) {
      return method.value;
    }
 else     if (methods.get(COMMAND_METHOD_MAP_INIT) != null) {
      method=methods.get(COMMAND_METHOD_DEFAULT);
      if (method != null) {
        return method.value;
      }
      return null;
    }
    methods.clear();
    for (    Method m : clz.getMethods()) {
      if (cmdInfo.isDefaultMethod(m)) {
        if (methods.get(COMMAND_METHOD_DEFAULT) != null) {
          throw new UiException("String_Node_Str" + cmdInfo.getDefaultAnnotationName() + "String_Node_Str"+ clz+ "String_Node_Str"+ methods.get(COMMAND_METHOD_DEFAULT).value+ "String_Node_Str"+ m);
        }
        methods.put(COMMAND_METHOD_DEFAULT,new CachedItem<Method>(m));
      }
      String[] vals=cmdInfo.getCommandName(m);
      if (vals == null)       continue;
      if (vals.length == 0) {
        vals=new String[]{m.getName()};
      }
      for (      String val : vals) {
        val=val.trim();
        if (methods.get(val) != null) {
          throw new UiException("String_Node_Str" + cmdInfo.getAnnotationName() + "String_Node_Str"+ val+ "String_Node_Str"+ clz+ "String_Node_Str"+ methods.get(val).value+ "String_Node_Str"+ m);
        }
        methods.put(val,new CachedItem<Method>(m));
      }
    }
    methods.put(COMMAND_METHOD_MAP_INIT,NULL_METHOD);
  }
  method=methods.get(command);
  if (method != null) {
    return method.value;
  }
  method=methods.get(COMMAND_METHOD_DEFAULT);
  return method == null ? null : method.value;
}
Program: 16162
Project: 16162
Buggy source:
/** 
 * Adds an imported class Like Java, it is used to import a class or a package of classes, so that it simplifies the use of the apply attribute, the init directive and others.
 * @param clsptn the class's full-qualitified name, e.g., <code>com.foo.FooComposer</code>,a wildcard representing all classes of the give pacakge, e.g., <code>com.foo.*</code>.
 * @since 6.0.0
 */
public void addImportedClass(String clsptn) throws ClassNotFoundException {
  _clsresolver.addImportedClass(clsptn);
}

Fixed version (ground truth):
/** 
 * Adds an imported class Like Java, it is used to import a class or a package of classes, so that it simplifies the use of the apply attribute, the init directive and others.
 * @param clsptn the class's full-qualitified name, e.g., <code>com.foo.FooComposer</code>,a wildcard representing all classes of the give pacakge, e.g., <code>com.foo.*</code>.
 * @since 6.0.0
 */
public void addImportedClass(String clsptn) throws ClassNotFoundException {
  _clsresolver.addImportedClass(clsptn);
  if ("String_Node_Str".equals(_zslang))   _langdef.addInitScript(_zslang,"String_Node_Str" + clsptn);
}
Program: 16163
Project: 16163
Buggy source:
/** 
 * Loads the content of a javascript file as a String.
 * @since 5.0.11
 */
public static String loadJavaScript(Execution exec,String path) throws IOException {
  path=exec.locate(path);
  InputStream is=exec.getDesktop().getWebApp().getResourceAsStream(path);
  if (is == null)   throw new UiException("String_Node_Str" + path);
  final byte[] bs=Files.readAll(is);
  Files.close(is);
  return new String(bs,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Loads the content of a javascript file as a String.
 * @since 5.0.11
 */
public static String loadJavaScript(Execution exec,String path) throws IOException {
  path=exec.locate(path);
  InputStream is=WebApps.getCurrent().getResourceAsStream(path);
  if (is == null)   throw new UiException("String_Node_Str" + path);
  final byte[] bs=Files.readAll(is);
  Files.close(is);
  return new String(bs,"String_Node_Str");
}
Program: 16164
Project: 16164
Buggy source:
/** 
 * Generates Locale-dependent strings in JavaScript syntax.
 */
public final static String outLocaleJavaScript(){
  final Locale locale=Locales.getCurrent();
  return outNumberJavaScript(locale) + outDateJavaScript(locale);
}

Fixed version (ground truth):
/** 
 * Generates Locale-dependent strings in JavaScript syntax.
 * @since 6.5.1
 */
public static final String outLocaleJavaScript(ServletRequest request,ServletResponse response) throws IOException {
  final StringBuffer result=new StringBuffer(4096);
  final WebApp webApp=WebApps.getCurrent();
  final Execution exec=new FakeExecution(webApp.getServletContext(),request,response,null,null);
  result.append(Devices.loadJavaScript(exec,"String_Node_Str"));
  result.append(Wpds.outLocaleJavaScript());
  for (  LanguageDefinition langdef : LanguageDefinition.getByDeviceType("String_Node_Str"))   for (  MessageLoader loader : langdef.getMessageLoaders())   loader.load(result,exec);
  return result.toString();
}
Program: 16165
Project: 16165
Buggy source:
/** 
 * Load the message to output StringBuffer
 * @param out StringBuffer to output
 * @param exec current Execution
 */
public void load(StringBuffer out,Execution exec) throws IOException ;

Fixed version (ground truth):
/** 
 * Load the message to output StringBuffer. <p>There are two timing the ZK system will scan the <code>MessageLoader</code> setting and call this mehtod of corresponding instance. <ol> <li>  {@link Wpds#outLocaleJavaScript(javax.servlet.ServletRequest,javax.servlet.ServletResponse)} (define in zul/lang/zk.wpd)</li><li> {@link Clients#reloadMessages(java.util.Locale)}</li> </ol> At first timing, execution will not have Desktop and Page instance,  so programmer must notice that many Execution's method can't use. </p>
 * @param out StringBuffer to output
 * @param exec current Execution
 */
public void load(StringBuffer out,Execution exec) throws IOException ;
Program: 16166
Project: 16166
Buggy source:
/** 
 * Ses the page without fixing IdSpace
 */
private void setPage0(Page page){
  if (page == _page)   return;
  final boolean bRoot=_parent == null;
  boolean resetUuid=false;
  if (_page != null) {
    if (bRoot)     ((AbstractPage)_page).removeRoot(this);
    if (page == null && ((DesktopCtrl)_page.getDesktop()).removeComponent(this,true))     resetUuid=true;
  }
  final Page oldpage=_page;
  _page=page;
  if (_page != null) {
    if (bRoot)     ((AbstractPage)_page).addRoot(this);
    final Desktop desktop=_page.getDesktop();
    if (oldpage == null) {
      if (_uuid == null || _uuid.startsWith(ANONYMOUS_ID) || desktop.getComponentByUuidIfAny(_uuid) != null)       _uuid=nextUuid(desktop);
      ((DesktopCtrl)desktop).addComponent(this);
    }
    onPageAttached(_page,oldpage);
  }
 else {
    onPageDetached(oldpage);
  }
  for (AbstractComponent p=(AbstractComponent)getFirstChild(); p != null; p=p._next)   p.setPage0(page);
  if (resetUuid)   _uuid=null;
}

Fixed version (ground truth):
/** 
 * Ses the page without fixing IdSpace
 */
private void setPage0(Page page){
  if (page == _page)   return;
  final boolean bRoot=_parent == null;
  boolean resetUuid=false;
  if (_page != null) {
    if (bRoot)     ((AbstractPage)_page).removeRoot(this);
    if (page == null && ((DesktopCtrl)_page.getDesktop()).removeComponent(this,true) && !(this instanceof StubComponent))     resetUuid=true;
  }
  final Page oldpage=_page;
  _page=page;
  if (_page != null) {
    if (bRoot)     ((AbstractPage)_page).addRoot(this);
    final Desktop desktop=_page.getDesktop();
    if (oldpage == null) {
      if (_uuid == null || _uuid.startsWith(ANONYMOUS_ID) || desktop.getComponentByUuidIfAny(_uuid) != null)       _uuid=nextUuid(desktop);
      ((DesktopCtrl)desktop).addComponent(this);
    }
    onPageAttached(_page,oldpage);
  }
 else {
    onPageDetached(oldpage);
  }
  for (AbstractComponent p=(AbstractComponent)getFirstChild(); p != null; p=p._next)   p.setPage0(page);
  if (resetUuid)   _uuid=null;
}
Program: 16167
Project: 16167
Buggy source:
public boolean removeComponent(Component comp,boolean recycleAllowed){
  final String uuid=comp.getUuid();
  if (_comps.remove(uuid) == null || !recycleAllowed || recycleUuidDisabled())   return false;
  if (comp instanceof RawId && (!ComponentsCtrl.isAutoUuid(uuid) || ((WebAppCtrl)_wapp).getIdGenerator() != null))   return false;
  final int execId=getExecId();
  RecycleInfo ri=null;
  if (_uuidRecycle == null) {
    _uuidRecycle=new LinkedList<RecycleInfo>();
  }
 else {
    for (    RecycleInfo r : _uuidRecycle)     if (r.execId == execId) {
      ri=r;
      break;
    }
  }
  if (ri == null)   _uuidRecycle.add(ri=new RecycleInfo(execId));
  ri.uuids.add(uuid);
  return true;
}

Fixed version (ground truth):
public boolean removeComponent(Component comp,boolean recycleAllowed){
  final String uuid=comp.getUuid();
  if (_comps.remove(uuid) == null || !recycleAllowed || recycleUuidDisabled() || (comp instanceof StubComponent))   return false;
  if (comp instanceof RawId && (!ComponentsCtrl.isAutoUuid(uuid) || ((WebAppCtrl)_wapp).getIdGenerator() != null))   return false;
  final int execId=getExecId();
  RecycleInfo ri=null;
  if (_uuidRecycle == null) {
    _uuidRecycle=new LinkedList<RecycleInfo>();
  }
 else {
    for (    RecycleInfo r : _uuidRecycle)     if (r.execId == execId) {
      ri=r;
      break;
    }
  }
  if (ri == null)   _uuidRecycle.add(ri=new RecycleInfo(execId));
  ri.uuids.add(uuid);
  return true;
}
Program: 16169
Project: 16169
Buggy source:
private static void append(StringBuffer sb,JavaScript js){
  sb.append("String_Node_Str");
  if (js.getSrc() != null) {
    String url;
    try {
      url=ServletFns.encodeURL(js.getSrc());
    }
 catch (    javax.servlet.ServletException ex) {
      throw new UiException(ex);
    }
    sb.append("String_Node_Str").append(url).append('"');
    final String charset=js.getCharset();
    if (charset != null)     sb.append("String_Node_Str").append(charset).append('"');
    sb.append('>');
  }
 else {
    sb.append("String_Node_Str").append(js.getContent());
  }
  sb.append("String_Node_Str");
}

Fixed version (ground truth):
private static void append(StringBuffer sb,JavaScript js){
  sb.append("String_Node_Str");
  if (js.getSrc() != null) {
    String url;
    try {
      url=ServletFns.encodeURL(js.getSrc());
    }
 catch (    javax.servlet.ServletException ex) {
      throw new UiException(ex);
    }
    sb.append("String_Node_Str").append(url).append('"');
    final String charset=js.getCharset();
    if (charset != null)     sb.append("String_Node_Str").append(charset).append('"');
    sb.append('>');
  }
 else {
    sb.append("String_Node_Str").append(js.getContent()).append("String_Node_Str");
  }
  sb.append("String_Node_Str");
}
Program: 16170
Project: 16170
Buggy source:
private static final boolean load(String flnm){
  final InputStream strm=ContentTypes.class.getResourceAsStream(flnm);
  if (strm == null)   return false;
  try {
    final BufferedReader in=new BufferedReader(new InputStreamReader(strm));
    String line;
    while ((line=in.readLine()) != null) {
      final int j=line.indexOf('=');
      if (j < 0) {
        final int k=Strings.skipWhitespaces(line,0);
        if (k < line.length() && line.charAt(k) != '#')         log.warning("String_Node_Str" + line);
        continue;
      }
      final String format=line.substring(0,j).trim();
      final String ctype=line.substring(j + 1).trim();
      if (format.length() == 0 || ctype.length() == 0) {
        log.warning("String_Node_Str" + line);
        continue;
      }
      _fmt2ct.put(format,ctype);
      _ct2fmt.put(ctype,format);
    }
  }
 catch (  IOException ex) {
    log.warning("String_Node_Str" + flnm,ex);
  }
 finally {
    try {
      strm.close();
    }
 catch (    Throwable ex) {
    }
  }
  return true;
}

Fixed version (ground truth):
private static final boolean load(String flnm){
  final InputStream strm=ContentTypes.class.getResourceAsStream(flnm);
  if (strm == null)   return false;
  try {
    final BufferedReader in=new BufferedReader(new InputStreamReader(strm));
    String line;
    while ((line=in.readLine()) != null) {
      final int j=line.indexOf('=');
      if (j < 0) {
        final int k=Strings.skipWhitespaces(line,0);
        if (k < line.length() && line.charAt(k) != '#')         log.warning("String_Node_Str" + line);
        continue;
      }
      final String format=line.substring(0,j).trim();
      final String ctype=line.substring(j + 1).trim();
      if (format.length() == 0 || ctype.length() == 0) {
        log.warning("String_Node_Str" + line);
        continue;
      }
      _fmt2ct.put(format,ctype);
      _ct2fmt.put(ctype,format);
    }
    in.close();
  }
 catch (  IOException ex) {
    log.warning("String_Node_Str" + flnm,ex);
  }
 finally {
    try {
      strm.close();
    }
 catch (    Throwable ex) {
    }
  }
  return true;
}
Program: 16171
Project: 16171
Buggy source:
@Override public void init(Execution exec,Execution parent) throws Exception {
  Desktop desktop=exec.getDesktop();
  desktop.removeListener(this);
  _deferredActivator=null;
  BinderImpl.this.didActivate();
}

Fixed version (ground truth):
@Override public void init(Execution exec,Execution parent) throws Exception {
  Desktop desktop=exec.getDesktop();
  desktop.removeListener(_deferredActivator);
  BinderImpl.this.didActivate();
}
Program: 16172
Project: 16172
Buggy source:
@Override public void willPassivate(Component comp){
  if (_rootComp.equals(comp)) {
    _log.debug("String_Node_Str",comp);
    if (_deferredActivator != null) {
      comp.getDesktop().removeListener(_deferredActivator);
      _deferredActivator=null;
    }
    unsubscribeQueue(_quename,_quescope,_queueListener);
  }
}

Fixed version (ground truth):
@Override public void willPassivate(Component comp){
}
Program: 16173
Project: 16173
Buggy source:
@Override public void didActivate(Component comp){
  if (_rootComp.equals(comp)) {
    if (_deferredActivator == null) {
      subscribeQueue(_quename,_quescope,_queueListener);
      comp.getDesktop().addListener(_deferredActivator=new DeferredActivator());
    }
  }
}

Fixed version (ground truth):
@Override public void didActivate(Component comp){
  if (_rootComp.equals(comp)) {
    if (!isSubscribed(_quename,_quescope,_queueListener))     subscribeQueue(_quename,_quescope,_queueListener);
    if (_deferredActivator == null) {
      comp.getDesktop().addListener(_deferredActivator=new DeferredActivator());
    }
  }
}
Program: 16175
Project: 16175
Buggy source:
protected static final Object coerceToTypeForSetValue(final Object obj,final Class<?> type) throws ELException {
  if (type == null || Object.class.equals(type) || (obj != null && type.isAssignableFrom(obj.getClass()))) {
    return obj;
  }
  if (String.class.equals(type)) {
    return obj == null && COERCE_NULL_TO_NULL ? null : coerceToString(obj);
  }
  if (ELArithmetic.isNumberType(type)) {
    return (obj == null || "String_Node_Str".equals(obj)) && !type.isPrimitive() && COERCE_NULL_TO_NULL ? null : coerceToNumber(obj,type);
  }
  if (Character.class.equals(type) || Character.TYPE == type) {
    return (obj == null || "String_Node_Str".equals(obj)) && !type.isPrimitive() && COERCE_NULL_TO_NULL ? null : coerceToCharacter(obj);
  }
  if (Boolean.class.equals(type) || Boolean.TYPE == type) {
    return (obj == null || "String_Node_Str".equals(obj)) && COERCE_NULL_TO_NULL ? null : coerceToBoolean(obj);
  }
  if (type.isEnum()) {
    return coerceToEnum(obj,type);
  }
  if (isDateTimeType(type)) {
    return coerceToDateTime(obj,type);
  }
  if (obj == null)   return null;
  if (obj instanceof String) {
    if ("String_Node_Str".equals(obj))     return null;
    PropertyEditor editor=PropertyEditorManager.findEditor(type);
    if (editor != null) {
      editor.setAsText((String)obj);
      return editor.getValue();
    }
  }
  throw new ELException(MessageFactory.get("String_Node_Str",obj,obj.getClass(),type));
}

Fixed version (ground truth):
protected static final Object coerceToTypeForSetValue(final Object obj,final Class<?> type) throws ELException {
  if (type == null || Object.class.equals(type) || (obj != null && type.isAssignableFrom(obj.getClass()))) {
    return obj;
  }
  if (String.class.equals(type)) {
    return obj == null && COERCE_NULL_TO_NULL ? null : coerceToString(obj);
  }
  if (ELArithmetic.isNumberType(type)) {
    return (obj == null || "String_Node_Str".equals(obj)) && !type.isPrimitive() && COERCE_NULL_TO_NULL ? null : coerceToNumber(obj,type);
  }
  if (Character.class.equals(type) || Character.TYPE == type) {
    return (obj == null || "String_Node_Str".equals(obj)) && !type.isPrimitive() && COERCE_NULL_TO_NULL ? null : coerceToCharacter(obj);
  }
  if (Boolean.class.equals(type) || Boolean.TYPE == type) {
    return (obj == null || "String_Node_Str".equals(obj)) && !type.isPrimitive() && COERCE_NULL_TO_NULL ? null : coerceToBoolean(obj);
  }
  if (type.isEnum()) {
    return coerceToEnum(obj,type);
  }
  if (isDateTimeType(type)) {
    return coerceToDateTime(obj,type);
  }
  if (obj == null)   return null;
  if (obj instanceof String) {
    if ("String_Node_Str".equals(obj))     return null;
    PropertyEditor editor=PropertyEditorManager.findEditor(type);
    if (editor != null) {
      editor.setAsText((String)obj);
      return editor.getValue();
    }
  }
  throw new ELException(MessageFactory.get("String_Node_Str",obj,obj.getClass(),type));
}
Program: 16176
Project: 16176
Buggy source:
/** 
 * This method will parse Zul component's annotation that user declared and call   {@link Binder}'s addBindings series methods  to initiate binder's internal binding syntax trees, which then will cooperate with context(for look up variables) and be used by Binder's EL engine  while   {@link #loadComponent(Component,boolean)} or {@link Command} been triggered.<br>
 * @since 6.0.2
 */
public void initAnnotatedBindings(){
  checkInit();
  if (_initBindings)   throw new UiException("String_Node_Str");
  _initBindings=true;
  new AnnotateBinderHelper(this).initComponentBindings(this.getView());
  this.getView().setAttribute(BINDER,this);
}

Fixed version (ground truth):
/** 
 * This method will parse Zul component's annotation that user declared and call   {@link Binder}'s addBindings series methods  to initiate binder's internal binding syntax trees, which then will cooperate with context(for look up variables) and be used by Binder's EL engine  while   {@link #loadComponent(Component,boolean)} or {@link Command} been triggered.<br>
 * @since 6.0.2
 */
public void initAnnotatedBindings(){
  checkInit();
  if (_initBindings)   throw new UiException("String_Node_Str");
  _initBindings=true;
  new AnnotateBinderHelper(this).initComponentBindings(this.getView());
  BinderUtil.markHandling(this.getView(),this);
}
Program: 16177
Project: 16177
Buggy source:
@Override public void init(Component comp,Object vm,Map<String,Object> initArgs){
  super.init(comp,vm,initArgs);
  comp.setAttribute(BINDER,this);
}

Fixed version (ground truth):
@Override public void init(Component comp,Object vm,Map<String,Object> initArgs){
  super.init(comp,vm,initArgs);
  BinderUtil.markHandling(comp,this);
}
Program: 16178
Project: 16178
Buggy source:
protected void addItemReference(Component modelOwner,final Component comp,int[] path,String varnm){
  final Binder binder=(Binder)comp.getAttribute(BinderImpl.BINDER,true);
  if (binder == null)   return;
  comp.setAttribute(TREE_PATH,path);
  final String expression=BindELContext.getModelName(modelOwner) + "String_Node_Str" + TREE_PATH+ "String_Node_Str";
  comp.setAttribute(varnm,new ReferenceBindingImpl(binder,expression,comp));
}

Fixed version (ground truth):
protected void addItemReference(Component modelOwner,final Component comp,int[] path,String varnm){
  final Binder binder=BinderUtil.getBinder(comp,true);
  if (binder == null)   return;
  comp.setAttribute(TREE_PATH,path);
  final String expression=BindELContext.getModelName(modelOwner) + "String_Node_Str" + TREE_PATH+ "String_Node_Str";
  comp.setAttribute(varnm,new ReferenceBindingImpl(binder,expression,comp));
}
Program: 16179
Project: 16179
Buggy source:
protected void addTemplateTracking(Component templateComp,final Component eachComp,final Object data,final int index,final int size){
  final Binder binder=(Binder)eachComp.getAttribute(BinderImpl.BINDER,true);
  if (binder == null)   return;
  final TemplateResolver resolver=((BinderCtrl)binder).getTemplateResolver(templateComp,_attributeName);
  if (resolver == null)   return;
  Object old=null;
  Object oldStatus=null;
  try {
    old=eachComp.setAttribute(EACH_VAR,data);
    oldStatus=eachComp.setAttribute(EACH_STATUS_VAR,new AbstractForEachStatus(){
      private static final long serialVersionUID=1L;
      @Override public int getIndex(){
        return index;
      }
      @Override public Object getEach(){
        return data;
      }
      @Override public Integer getEnd(){
        if (size < 0) {
          throw new UiException("String_Node_Str");
        }
        return size;
      }
    }
);
    resolver.addTemplateTracking(eachComp);
  }
  finally {
    eachComp.setAttribute(EACH_STATUS_VAR,oldStatus);
    eachComp.setAttribute(TemplateResolver.EACH_VAR,old);
  }
}

Fixed version (ground truth):
protected void addTemplateTracking(Component templateComp,final Component eachComp,final Object data,final int index,final int size){
  final Binder binder=BinderUtil.getBinder(eachComp,true);
  if (binder == null)   return;
  final TemplateResolver resolver=((BinderCtrl)binder).getTemplateResolver(templateComp,_attributeName);
  if (resolver == null)   return;
  Object old=null;
  Object oldStatus=null;
  try {
    old=eachComp.setAttribute(EACH_VAR,data);
    oldStatus=eachComp.setAttribute(EACH_STATUS_VAR,new AbstractForEachStatus(){
      private static final long serialVersionUID=1L;
      @Override public int getIndex(){
        return index;
      }
      @Override public Object getEach(){
        return data;
      }
      @Override public Integer getEnd(){
        if (size < 0) {
          throw new UiException("String_Node_Str");
        }
        return size;
      }
    }
);
    resolver.addTemplateTracking(eachComp);
  }
  finally {
    eachComp.setAttribute(EACH_STATUS_VAR,oldStatus);
    eachComp.setAttribute(TemplateResolver.EACH_VAR,old);
  }
}
Program: 16180
Project: 16180
Buggy source:
protected Template resoloveTemplate(Component templateComp,Component comp,Object data,int index,int size,String defaultName){
  if (comp.getPage() == null)   return null;
  final Binder binder=(Binder)comp.getAttribute(BinderImpl.BINDER,true);
  final TemplateResolver resolver=((BinderCtrl)binder).getTemplateResolver(templateComp,_attributeName);
  Template template=null;
  if (resolver != null) {
    template=resolver.resolveTemplate(comp,data,index,size);
    if (template == null) {
      throw new UiException("String_Node_Str" + comp + "String_Node_Str"+ resolver);
    }
  }
 else {
    template=lookupTemplate(comp,defaultName);
  }
  return template;
}

Fixed version (ground truth):
protected Template resoloveTemplate(Component templateComp,Component comp,Object data,int index,int size,String defaultName){
  if (comp.getPage() == null)   return null;
  final Binder binder=BinderUtil.getBinder(comp,true);
  final TemplateResolver resolver=((BinderCtrl)binder).getTemplateResolver(templateComp,_attributeName);
  Template template=null;
  if (resolver != null) {
    template=resolver.resolveTemplate(comp,data,index,size);
    if (template == null) {
      throw new UiException("String_Node_Str" + comp + "String_Node_Str"+ resolver);
    }
  }
 else {
    template=lookupTemplate(comp,defaultName);
  }
  return template;
}
Program: 16181
Project: 16181
Buggy source:
private void processAllComponentsBindings(Component comp){
  final Binder selfBinder=(Binder)comp.getAttribute(BinderImpl.BINDER);
  if (selfBinder != null)   return;
  processComponentBindings0(comp);
  for (final Iterator<Component> it=comp.getChildren().iterator(); it.hasNext(); ) {
    final Component kid=it.next();
    processAllComponentsBindings(kid);
  }
}

Fixed version (ground truth):
private void processAllComponentsBindings(Component comp){
  final Binder selfBinder=BinderUtil.getBinder(comp);
  if (selfBinder != null)   return;
  processComponentBindings0(comp);
  for (final Iterator<Component> it=comp.getChildren().iterator(); it.hasNext(); ) {
    final Component kid=it.next();
    processAllComponentsBindings(kid);
  }
}
Program: 16182
Project: 16182
Buggy source:
private void processComponentBindings0(Component comp){
  final ComponentCtrl compCtrl=(ComponentCtrl)comp;
  final List<String> props=compCtrl.getAnnotatedProperties();
  for (final Iterator<?> it=props.iterator(); it.hasNext(); ) {
    final String propName=(String)it.next();
    if (isEventProperty(propName)) {
      processCommandBinding(comp,propName);
      processGlobalCommandBinding(comp,propName);
    }
 else     if (FORM_ATTR.equals(propName)) {
      processFormBindings(comp);
    }
 else     if (CHILDREN_ATTR.equals(propName)) {
      processChildrenBindings(comp);
    }
 else     if (VIEW_MODEL_ATTR.equals(propName)) {
    }
 else     if (BINDER_ATTR.equals(propName)) {
    }
 else {
      processPropertyBindings(comp,propName);
    }
  }
}

Fixed version (ground truth):
private void processComponentBindings0(Component comp){
  final ComponentCtrl compCtrl=(ComponentCtrl)comp;
  final List<String> props=compCtrl.getAnnotatedProperties();
  for (final Iterator<?> it=props.iterator(); it.hasNext(); ) {
    final String propName=(String)it.next();
    if (isEventProperty(propName)) {
      processCommandBinding(comp,propName);
      processGlobalCommandBinding(comp,propName);
    }
 else     if (FORM_ATTR.equals(propName)) {
      processFormBindings(comp);
    }
 else     if (CHILDREN_ATTR.equals(propName)) {
      processChildrenBindings(comp);
    }
 else     if (VIEW_MODEL_ATTR.equals(propName)) {
    }
 else     if (BINDER_ATTR.equals(propName)) {
    }
 else {
      processPropertyBindings(comp,propName);
    }
  }
  if (!BinderUtil.isHandling(comp)) {
    BinderUtil.markHandling(comp,_binder);
  }
}
Program: 16183
Project: 16183
Buggy source:
private void addBinding(Component comp,String attr,Binding binding){
  Map<String,List<Binding>> attrMap=_bindings.get(comp);
  if (attrMap == null) {
    attrMap=new LinkedHashMap<String,List<Binding>>();
    _bindings.put(comp,attrMap);
  }
  List<Binding> bindings=attrMap.get(attr);
  if (bindings == null) {
    bindings=new ArrayList<Binding>();
    attrMap.put(attr,bindings);
  }
  bindings.add(binding);
  comp.setAttribute(BINDER,this);
}

Fixed version (ground truth):
private void addBinding(Component comp,String attr,Binding binding){
  Map<String,List<Binding>> attrMap=_bindings.get(comp);
  if (attrMap == null) {
    attrMap=new LinkedHashMap<String,List<Binding>>();
    _bindings.put(comp,attrMap);
  }
  List<Binding> bindings=attrMap.get(attr);
  if (bindings == null) {
    bindings=new ArrayList<Binding>();
    attrMap.put(attr,bindings);
  }
  bindings.add(binding);
  BinderUtil.markHandling(comp,this);
}