Program: 47749
Project: 47749
Buggy source:
public JobEntryHadoopJobExecutorDialog(Shell parent,JobEntryInterface jobEntry,Repository rep,JobMeta jobMeta) throws XulException, DocumentException {
  super(parent,jobEntry,rep,jobMeta);
  this.jobEntry=(JobEntryHadoopJobExecutor)jobEntry;
  SwtXulLoader swtXulLoader=new SwtXulLoader();
  swtXulLoader.registerClassLoader(getClass().getClassLoader());
  swtXulLoader.setOuterContext(shell);
  container=swtXulLoader.loadXul("String_Node_Str",bundle);
  final XulRunner runner=new SwtXulRunner();
  runner.addContainer(container);
  container.addEventHandler(controller);
  bf=new DefaultBindingFactory();
  bf.setDocument(container.getDocumentRoot());
  bf.setBindingType(Type.BI_DIRECTIONAL);
  bf.createBinding("String_Node_Str","String_Node_Str",controller,JobEntryHadoopJobExecutorController.JOB_ENTRY_NAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),JobEntryHadoopJobExecutorController.AdvancedConfiguration.HADOOP_DISTRIBUTION);
  bf.createBinding("String_Node_Str","String_Node_Str",controller,JobEntryHadoopJobExecutorController.HADOOP_JOB_NAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller,JobEntryHadoopJobExecutorController.JAR_URL);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getSimpleConfiguration(),SimpleConfiguration.CMD_LINE_ARGS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_KEY_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_VALUE_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.MAPPER_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.COMBINER_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.REDUCER_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.INPUT_FORMAT_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_FORMAT_CLASS);
  final BindingConvertor<String,Integer> bindingConverter=new BindingConvertor<String,Integer>(){
    public Integer sourceToTarget(    String value){
      return Integer.parseInt(value);
    }
    public String targetToSource(    Integer value){
      return value.toString();
    }
  }
;
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.NUM_MAP_TASKS,bindingConverter);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.NUM_REDUCE_TASKS,bindingConverter);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.BLOCKING);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.LOGGING_INTERVAL,bindingConverter);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.INPUT_PATH);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_PATH);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.HDFS_HOSTNAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.HDFS_PORT);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.JOB_TRACKER_HOSTNAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.JOB_TRACKER_PORT);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.WORKING_DIRECTORY);
  ((XulRadio)container.getDocumentRoot().getElementById("String_Node_Str")).setSelected(this.jobEntry.isSimple());
  ((XulRadio)container.getDocumentRoot().getElementById("String_Node_Str")).setSelected(!this.jobEntry.isSimple());
  ((XulVbox)container.getDocumentRoot().getElementById("String_Node_Str")).setVisible(!this.jobEntry.isSimple());
  XulTextbox loggingInterval=(XulTextbox)container.getDocumentRoot().getElementById("String_Node_Str");
  loggingInterval.setValue("String_Node_Str" + controller.getAdvancedConfiguration().getLoggingInterval());
  XulTextbox mapTasks=(XulTextbox)container.getDocumentRoot().getElementById("String_Node_Str");
  mapTasks.setValue("String_Node_Str" + controller.getAdvancedConfiguration().getNumMapTasks());
  XulTextbox reduceTasks=(XulTextbox)container.getDocumentRoot().getElementById("String_Node_Str");
  reduceTasks.setValue("String_Node_Str" + controller.getAdvancedConfiguration().getNumReduceTasks());
  XulTree variablesTree=(XulTree)container.getDocumentRoot().getElementById("String_Node_Str");
  bf.setBindingType(Type.ONE_WAY);
  bf.createBinding(controller.getUserDefined(),"String_Node_Str",variablesTree,"String_Node_Str");
  bf.setBindingType(Type.BI_DIRECTIONAL);
  controller.setJobEntry((JobEntryHadoopJobExecutor)jobEntry);
  controller.init();
}

Fixed version (ground truth):
public JobEntryHadoopJobExecutorDialog(Shell parent,JobEntryInterface jobEntry,Repository rep,JobMeta jobMeta) throws XulException, DocumentException {
  super(parent,jobEntry,rep,jobMeta);
  this.jobEntry=(JobEntryHadoopJobExecutor)jobEntry;
  SwtXulLoader swtXulLoader=new SwtXulLoader();
  swtXulLoader.registerClassLoader(getClass().getClassLoader());
  swtXulLoader.setOuterContext(shell);
  container=swtXulLoader.loadXul("String_Node_Str",bundle);
  final XulRunner runner=new SwtXulRunner();
  runner.addContainer(container);
  container.addEventHandler(controller);
  bf=new DefaultBindingFactory();
  bf.setDocument(container.getDocumentRoot());
  bf.setBindingType(Type.BI_DIRECTIONAL);
  bf.createBinding("String_Node_Str","String_Node_Str",controller,JobEntryHadoopJobExecutorController.JOB_ENTRY_NAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),JobEntryHadoopJobExecutorController.AdvancedConfiguration.HADOOP_DISTRIBUTION);
  bf.createBinding("String_Node_Str","String_Node_Str",controller,JobEntryHadoopJobExecutorController.HADOOP_JOB_NAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller,JobEntryHadoopJobExecutorController.JAR_URL);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getSimpleConfiguration(),SimpleConfiguration.CMD_LINE_ARGS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_KEY_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_VALUE_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.MAPPER_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.COMBINER_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.REDUCER_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.INPUT_FORMAT_CLASS);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_FORMAT_CLASS);
  final BindingConvertor<String,Integer> bindingConverter=new BindingConvertor<String,Integer>(){
    public Integer sourceToTarget(    String value){
      return Integer.parseInt(value);
    }
    public String targetToSource(    Integer value){
      return value.toString();
    }
  }
;
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.NUM_MAP_TASKS,bindingConverter);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.NUM_REDUCE_TASKS,bindingConverter);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.BLOCKING);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.LOGGING_INTERVAL,bindingConverter);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.INPUT_PATH);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.OUTPUT_PATH);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.HDFS_HOSTNAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.HDFS_PORT);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.JOB_TRACKER_HOSTNAME);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.JOB_TRACKER_PORT);
  bf.createBinding("String_Node_Str","String_Node_Str",controller.getAdvancedConfiguration(),AdvancedConfiguration.WORKING_DIRECTORY);
  ((XulRadio)container.getDocumentRoot().getElementById("String_Node_Str")).setSelected(this.jobEntry.isSimple());
  ((XulRadio)container.getDocumentRoot().getElementById("String_Node_Str")).setSelected(!this.jobEntry.isSimple());
  ((XulVbox)container.getDocumentRoot().getElementById("String_Node_Str")).setVisible(!this.jobEntry.isSimple());
  XulTextbox loggingInterval=(XulTextbox)container.getDocumentRoot().getElementById("String_Node_Str");
  loggingInterval.setValue("String_Node_Str" + controller.getAdvancedConfiguration().getLoggingInterval());
  XulTextbox mapTasks=(XulTextbox)container.getDocumentRoot().getElementById("String_Node_Str");
  mapTasks.setValue("String_Node_Str" + controller.getAdvancedConfiguration().getNumMapTasks());
  XulTextbox reduceTasks=(XulTextbox)container.getDocumentRoot().getElementById("String_Node_Str");
  reduceTasks.setValue("String_Node_Str" + controller.getAdvancedConfiguration().getNumReduceTasks());
  XulTree variablesTree=(XulTree)container.getDocumentRoot().getElementById("String_Node_Str");
  bf.setBindingType(Type.ONE_WAY);
  bf.createBinding(controller.getUserDefined(),"String_Node_Str",variablesTree,"String_Node_Str");
  bf.setBindingType(Type.BI_DIRECTIONAL);
  controller.setJobEntry((JobEntryHadoopJobExecutor)jobEntry);
  try {
    controller.init();
  }
 catch (  Throwable t) {
    throw new XulException("String_Node_Str",t);
  }
}