Program: 60685
Project: 60685
Buggy source:
public SyncTasks(String id,final PageReference callerPageRef){
  super(id);
  container=new WebMarkupContainer("String_Node_Str");
  container.setOutputMarkupId(true);
  add(container);
  window=new ModalWindow("String_Node_Str");
  window.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
  window.setInitialHeight(WIN_HEIGHT);
  window.setInitialWidth(WIN_WIDTH);
  window.setCookieName("String_Node_Str");
  add(window);
  ((Tasks)callerPageRef.getPage()).setWindowClosedCallback(window,container);
  paginatorRows=prefMan.getPaginatorRows(getWebRequest(),Constants.PREF_SYNC_TASKS_PAGINATOR_ROWS);
  List<IColumn<SyncTaskTO>> columns=new ArrayList<IColumn<SyncTaskTO>>();
  columns.add(new PropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new DatePropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new DatePropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink viewLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          window.setPageCreator(new ModalWindow.PageCreator(){
            private static final long serialVersionUID=-7834632442532690940L;
            @Override public Page createPage(){
              return new SyncTaskModalPage(window,taskTO,callerPageRef);
            }
          }
);
          window.show(target);
        }
      }
;
      EditLinkPanel panel=new EditLinkPanel(componentId,model);
      panel.add(viewLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink viewLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          window.setPageCreator(new ModalWindow.PageCreator(){
            private static final long serialVersionUID=-7834632442532690940L;
            @Override public Page createPage(){
              return new UserModalPage(callerPageRef,window,taskTO);
            }
          }
);
          window.show(target);
        }
      }
;
      EditLinkPanel panel=new EditLinkPanel(componentId,model);
      panel.add(viewLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink executeLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          try {
            restClient.startExecution(taskTO.getId(),false);
            getSession().info(getString("String_Node_Str"));
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.add(container);
          target.add(getPage().get("String_Node_Str"));
        }
      }
;
      executeLink.add(new Label("String_Node_Str",getString("String_Node_Str")));
      LinkPanel panel=new LinkPanel(componentId);
      panel.add(executeLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink executeLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          try {
            restClient.startExecution(taskTO.getId(),true);
            getSession().info(getString("String_Node_Str"));
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.add(container);
          target.add(getPage().get("String_Node_Str"));
        }
      }
;
      executeLink.add(new Label("String_Node_Str",getString("String_Node_Str")));
      LinkPanel panel=new LinkPanel(componentId);
      panel.add(executeLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink deleteLink=new IndicatingDeleteOnConfirmAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          try {
            restClient.delete(taskTO.getId());
            info(getString("String_Node_Str"));
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.add(container);
          target.add(getPage().get("String_Node_Str"));
        }
      }
;
      DeleteLinkPanel panel=new DeleteLinkPanel(componentId,model);
      panel.add(deleteLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  final AjaxFallbackDefaultDataTable<SyncTaskTO> table=new AjaxFallbackDefaultDataTable<SyncTaskTO>("String_Node_Str",columns,new TasksProvider(restClient,paginatorRows,id,SyncTaskTO.class),paginatorRows);
  container.add(table);
  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"){
    private static final long serialVersionUID=-1107858522700306810L;
    @Override protected void onUpdate(    final AjaxRequestTarget target){
      prefMan.set(getWebRequest(),(WebResponse)getResponse(),Constants.PREF_SYNC_TASKS_PAGINATOR_ROWS,String.valueOf(paginatorRows));
      table.setItemsPerPage(paginatorRows);
      target.add(container);
    }
  }
);
  paginatorForm.add(rowsChooser);
  add(paginatorForm);
  AjaxLink createLink=new IndicatingAjaxLink("String_Node_Str"){
    private static final long serialVersionUID=-7978723352517770644L;
    @Override public void onClick(    final AjaxRequestTarget target){
      window.setPageCreator(new ModalWindow.PageCreator(){
        private static final long serialVersionUID=-7834632442532690940L;
        @Override public Page createPage(){
          return new SyncTaskModalPage(window,new SyncTaskTO(),callerPageRef);
        }
      }
);
      window.show(target);
    }
  }
;
  MetaDataRoleAuthorizationStrategy.authorize(createLink,RENDER,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
  add(createLink);
}

Fixed version (ground truth):
public SyncTasks(String id,final PageReference callerPageRef){
  super(id);
  container=new WebMarkupContainer("String_Node_Str");
  container.setOutputMarkupId(true);
  add(container);
  window=new ModalWindow("String_Node_Str");
  window.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
  window.setInitialHeight(WIN_HEIGHT);
  window.setInitialWidth(WIN_WIDTH);
  window.setCookieName("String_Node_Str");
  add(window);
  ((Tasks)callerPageRef.getPage()).setWindowClosedCallback(window,container);
  paginatorRows=prefMan.getPaginatorRows(getWebRequest(),Constants.PREF_SYNC_TASKS_PAGINATOR_ROWS);
  List<IColumn<SyncTaskTO>> columns=new ArrayList<IColumn<SyncTaskTO>>();
  columns.add(new PropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new DatePropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new DatePropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new PropertyColumn(new ResourceModel("String_Node_Str"),"String_Node_Str","String_Node_Str"));
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink viewLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          window.setPageCreator(new ModalWindow.PageCreator(){
            private static final long serialVersionUID=-7834632442532690940L;
            @Override public Page createPage(){
              return new SyncTaskModalPage(window,taskTO,callerPageRef);
            }
          }
);
          window.show(target);
        }
      }
;
      EditLinkPanel panel=new EditLinkPanel(componentId,model);
      panel.add(viewLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink viewLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          window.setPageCreator(new ModalWindow.PageCreator(){
            private static final long serialVersionUID=-7834632442532690940L;
            @Override public Page createPage(){
              return new UserModalPage(callerPageRef,window,taskTO);
            }
          }
);
          window.show(target);
        }
      }
;
      EditLinkPanel panel=new EditLinkPanel(componentId,model);
      panel.add(viewLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink executeLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          try {
            restClient.startExecution(taskTO.getId(),false);
            getSession().info(getString("String_Node_Str"));
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.add(container);
          target.add(getPage().get("String_Node_Str"));
        }
      }
;
      executeLink.add(new Label("String_Node_Str",getString("String_Node_Str")));
      LinkPanel panel=new LinkPanel(componentId);
      panel.add(executeLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink executeLink=new IndicatingAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          try {
            restClient.startExecution(taskTO.getId(),true);
            getSession().info(getString("String_Node_Str"));
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.add(container);
          target.add(getPage().get("String_Node_Str"));
        }
      }
;
      executeLink.add(new Label("String_Node_Str",getString("String_Node_Str")));
      LinkPanel panel=new LinkPanel(componentId);
      panel.add(executeLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  columns.add(new AbstractColumn<SyncTaskTO>(new ResourceModel("String_Node_Str")){
    private static final long serialVersionUID=2054811145491901166L;
    @Override public void populateItem(    final Item<ICellPopulator<SyncTaskTO>> cellItem,    final String componentId,    final IModel<SyncTaskTO> model){
      final SyncTaskTO taskTO=model.getObject();
      AjaxLink deleteLink=new IndicatingDeleteOnConfirmAjaxLink("String_Node_Str"){
        private static final long serialVersionUID=-7978723352517770644L;
        @Override public void onClick(        final AjaxRequestTarget target){
          try {
            restClient.delete(taskTO.getId());
            info(getString("String_Node_Str"));
          }
 catch (          SyncopeClientCompositeErrorException scce) {
            error(scce.getMessage());
          }
          target.add(container);
          target.add(getPage().get("String_Node_Str"));
        }
      }
;
      DeleteLinkPanel panel=new DeleteLinkPanel(componentId,model);
      panel.add(deleteLink);
      MetaDataRoleAuthorizationStrategy.authorize(panel,ENABLE,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
      cellItem.add(panel);
    }
  }
);
  final AjaxFallbackDefaultDataTable<SyncTaskTO> table=new AjaxFallbackDefaultDataTable<SyncTaskTO>("String_Node_Str",columns,new TasksProvider(restClient,paginatorRows,id,SyncTaskTO.class),paginatorRows);
  container.add(table);
  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"){
    private static final long serialVersionUID=-1107858522700306810L;
    @Override protected void onUpdate(    final AjaxRequestTarget target){
      prefMan.set(getWebRequest(),(WebResponse)getResponse(),Constants.PREF_SYNC_TASKS_PAGINATOR_ROWS,String.valueOf(paginatorRows));
      table.setItemsPerPage(paginatorRows);
      target.add(container);
    }
  }
);
  paginatorForm.add(rowsChooser);
  add(paginatorForm);
  AjaxLink createLink=new IndicatingAjaxLink("String_Node_Str"){
    private static final long serialVersionUID=-7978723352517770644L;
    @Override public void onClick(    final AjaxRequestTarget target){
      window.setPageCreator(new ModalWindow.PageCreator(){
        private static final long serialVersionUID=-7834632442532690940L;
        @Override public Page createPage(){
          return new SyncTaskModalPage(window,new SyncTaskTO(),callerPageRef);
        }
      }
);
      window.show(target);
    }
  }
;
  MetaDataRoleAuthorizationStrategy.authorize(createLink,RENDER,xmlRolesReader.getAllAllowedRoles("String_Node_Str","String_Node_Str"));
  add(createLink);
}