Program: 61103
Project: 61103
Buggy source:
public Tasks(final PageParameters parameters){
  super(parameters);
  add(window=new ModalWindow("String_Node_Str"));
  paginatorRows=prefMan.getPaginatorRows(getWebRequestCycle().getWebRequest(),Constants.PREF_TASKS_PAGINATOR_ROWS);
  List<IColumn> columns=new ArrayList<IColumn>();
  columns.add(new PropertyColumn(new Model(getString("String_Node_Str")),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new Model(getString("String_Node_Str")),"String_Node_Str","String_Node_Str"));
  columns.add(new AbstractColumn<TaskTO>(new Model<String>(getString("String_Node_Str"))){
    @Override public void populateItem(    final Item<ICellPopulator<TaskTO>> cellItem,    final String componentId,    final IModel<TaskTO> model){
      final TaskTO taskTO=model.getObject();
      AjaxLink viewLink=new IndicatingAjaxLink("String_Node_Str"){
        @Override public void onClick(        final AjaxRequestTarget target){
          window.setPageCreator(new ModalWindow.PageCreator(){
            @Override public Page createPage(){
              return new TaskModalPage(Tasks.this,window,taskTO);
            }
          }
);
          window.show(target);
        }
      }
;
      EditLinkPanel panel=new EditLinkPanel(componentId,model);
      panel.add(viewLink);
      String allowedRoles=xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str");
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,allowedRoles);
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<TaskTO>(new Model<String>(getString("String_Node_Str"))){
    public void populateItem(    final Item<ICellPopulator<TaskTO>> cellItem,    final String componentId,    final IModel<TaskTO> model){
      final TaskTO taskTO=model.getObject();
      AjaxLink executeLink=new IndicatingAjaxLink("String_Node_Str"){
        @Override public void onClick(        final AjaxRequestTarget target){
          boolean res=false;
          try {
            res=restClient.startTaskExecution(taskTO.getId());
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          if (res) {
            getSession().info(getString("String_Node_Str"));
          }
          target.addComponent(getPage().get("String_Node_Str"));
          target.addComponent(container);
        }
      }
;
      executeLink.add(new Label("String_Node_Str",getString("String_Node_Str")));
      LinkPanel panel=new LinkPanel(componentId);
      panel.add(executeLink);
      String allowedRoles=xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str");
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,allowedRoles);
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<TaskTO>(new Model<String>(getString("String_Node_Str"))){
    public void populateItem(    final Item<ICellPopulator<TaskTO>> cellItem,    final String componentId,    final IModel<TaskTO> model){
      final TaskTO taskTO=model.getObject();
      AjaxLink deleteLink=new IndicatingAjaxLink("String_Node_Str"){
        @Override public void onClick(        AjaxRequestTarget target){
          try {
            restClient.deleteTask(taskTO.getId());
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.addComponent(container);
        }
        @Override protected IAjaxCallDecorator getAjaxCallDecorator(){
          return new AjaxPreprocessingCallDecorator(super.getAjaxCallDecorator()){
            @Override public CharSequence preDecorateScript(            final CharSequence script){
              return "String_Node_Str" + getString("String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ script+ "String_Node_Str";
            }
          }
;
        }
      }
;
      DeleteLinkPanel panel=new DeleteLinkPanel(componentId,model);
      panel.add(deleteLink);
      String allowedRoles=xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str");
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,allowedRoles);
      cellItem.add(panel);
    }
  }
);
  final AjaxFallbackDefaultDataTable table=new AjaxFallbackDefaultDataTable("String_Node_Str",columns,new TasksProvider(),paginatorRows);
  container=new WebMarkupContainer("String_Node_Str");
  container.add(table);
  container.setOutputMarkupId(true);
  add(container);
  window.setWindowClosedCallback(new ModalWindow.WindowClosedCallback(){
    @Override public void onClose(    final AjaxRequestTarget target){
      target.addComponent(container);
      if (operationResult) {
        info(getString("String_Node_Str"));
        target.addComponent(feedbackPanel);
        operationResult=false;
      }
    }
  }
);
  window.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
  window.setInitialHeight(WIN_HEIGHT);
  window.setInitialWidth(WIN_WIDTH);
  window.setPageMapName("String_Node_Str");
  window.setCookieName("String_Node_Str");
  Form paginatorForm=new Form("String_Node_Str");
  final DropDownChoice rowsChooser=new DropDownChoice("String_Node_Str",new PropertyModel(this,"String_Node_Str"),prefMan.getPaginatorChoices());
  rowsChooser.add(new AjaxFormComponentUpdatingBehavior("String_Node_Str"){
    @Override protected void onUpdate(    final AjaxRequestTarget target){
      prefMan.set(getWebRequestCycle().getWebRequest(),getWebRequestCycle().getWebResponse(),Constants.PREF_TASKS_PAGINATOR_ROWS,String.valueOf(paginatorRows));
      table.setRowsPerPage(paginatorRows);
      target.addComponent(container);
    }
  }
);
  paginatorForm.add(rowsChooser);
  add(paginatorForm);
}

Fixed version (ground truth):
public Tasks(final PageParameters parameters){
  super(parameters);
  add(window=new ModalWindow("String_Node_Str"));
  paginatorRows=prefMan.getPaginatorRows(getWebRequestCycle().getWebRequest(),Constants.PREF_TASKS_PAGINATOR_ROWS);
  List<IColumn<TaskTO>> columns=new ArrayList<IColumn<TaskTO>>();
  columns.add(new PropertyColumn(new Model(getString("String_Node_Str")),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new Model(getString("String_Node_Str")),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new Model(getString("String_Node_Str")),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new Model(getString("String_Node_Str")),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new Model(getString("String_Node_Str")),"String_Node_Str","String_Node_Str"));
  columns.add(new AbstractColumn<TaskTO>(new Model<String>(getString("String_Node_Str"))){
    @Override public void populateItem(    final Item<ICellPopulator<TaskTO>> cellItem,    final String componentId,    final IModel<TaskTO> model){
      final TaskTO taskTO=model.getObject();
      AjaxLink viewLink=new IndicatingAjaxLink("String_Node_Str"){
        @Override public void onClick(        final AjaxRequestTarget target){
          window.setPageCreator(new ModalWindow.PageCreator(){
            @Override public Page createPage(){
              return new TaskModalPage(Tasks.this,window,taskTO);
            }
          }
);
          window.show(target);
        }
      }
;
      EditLinkPanel panel=new EditLinkPanel(componentId,model);
      panel.add(viewLink);
      String allowedRoles=xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str");
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,allowedRoles);
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<TaskTO>(new Model<String>(getString("String_Node_Str"))){
    public void populateItem(    final Item<ICellPopulator<TaskTO>> cellItem,    final String componentId,    final IModel<TaskTO> model){
      final TaskTO taskTO=model.getObject();
      AjaxLink executeLink=new IndicatingAjaxLink("String_Node_Str"){
        @Override public void onClick(        final AjaxRequestTarget target){
          try {
            restClient.startTaskExecution(taskTO.getId());
            getSession().info(getString("String_Node_Str"));
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.addComponent(getPage().get("String_Node_Str"));
          target.addComponent(container);
        }
      }
;
      executeLink.add(new Label("String_Node_Str",getString("String_Node_Str")));
      LinkPanel panel=new LinkPanel(componentId);
      panel.add(executeLink);
      String allowedRoles=xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str");
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,allowedRoles);
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<TaskTO>(new Model<String>(getString("String_Node_Str"))){
    @Override public void populateItem(    final Item<ICellPopulator<TaskTO>> cellItem,    final String componentId,    final IModel<TaskTO> model){
      final TaskTO taskTO=model.getObject();
      AjaxLink deleteLink=new IndicatingAjaxLink("String_Node_Str"){
        @Override public void onClick(        AjaxRequestTarget target){
          try {
            restClient.deleteTask(taskTO.getId());
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.addComponent(container);
        }
        @Override protected IAjaxCallDecorator getAjaxCallDecorator(){
          return new AjaxPreprocessingCallDecorator(super.getAjaxCallDecorator()){
            @Override public CharSequence preDecorateScript(            final CharSequence script){
              return "String_Node_Str" + getString("String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ script+ "String_Node_Str";
            }
          }
;
        }
      }
;
      DeleteLinkPanel panel=new DeleteLinkPanel(componentId,model);
      panel.add(deleteLink);
      String allowedRoles=xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str");
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,allowedRoles);
      cellItem.add(panel);
    }
  }
);
  final AjaxFallbackDefaultDataTable<TaskTO> table=new AjaxFallbackDefaultDataTable<TaskTO>("String_Node_Str",columns,new TasksProvider(),paginatorRows);
  container=new WebMarkupContainer("String_Node_Str");
  container.add(table);
  container.setOutputMarkupId(true);
  add(container);
  window.setWindowClosedCallback(new ModalWindow.WindowClosedCallback(){
    @Override public void onClose(    final AjaxRequestTarget target){
      target.addComponent(container);
      if (operationResult) {
        info(getString("String_Node_Str"));
        target.addComponent(feedbackPanel);
        operationResult=false;
      }
    }
  }
);
  window.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
  window.setInitialHeight(WIN_HEIGHT);
  window.setInitialWidth(WIN_WIDTH);
  window.setPageMapName("String_Node_Str");
  window.setCookieName("String_Node_Str");
  Form paginatorForm=new Form("String_Node_Str");
  final DropDownChoice rowsChooser=new DropDownChoice("String_Node_Str",new PropertyModel(this,"String_Node_Str"),prefMan.getPaginatorChoices());
  rowsChooser.add(new AjaxFormComponentUpdatingBehavior("String_Node_Str"){
    @Override protected void onUpdate(    final AjaxRequestTarget target){
      prefMan.set(getWebRequestCycle().getWebRequest(),getWebRequestCycle().getWebResponse(),Constants.PREF_TASKS_PAGINATOR_ROWS,String.valueOf(paginatorRows));
      table.setRowsPerPage(paginatorRows);
      target.addComponent(container);
    }
  }
);
  paginatorForm.add(rowsChooser);
  add(paginatorForm);
}