public void queueEvent(FacesEvent event) {
if(event.getSource() instanceof UIExtendedDataTable) {
if (event instanceof AjaxEvent) {
event.setPhaseId(PhaseId.APPLY_REQUEST_VALUES);
} else if (event instanceof DragDropEvent) {
new AjaxEvent(this).queue();
event.setPhaseId(PhaseId.APPLY_REQUEST_VALUES);
} else if (event instanceof ChangeColumnVisibilityEvent) {
new AjaxEvent(this).queue();
event.setPhaseId(PhaseId.APPLY_REQUEST_VALUES);
} else if (event instanceof ColumnResizeEvent) {
event.setPhaseId(PhaseId.RENDER_RESPONSE);
} else if (event instanceof ExtTableSortEvent) {
new AjaxEvent(this).queue();
event.setPhaseId(PhaseId.APPLY_REQUEST_VALUES);
} else if (event instanceof ExtTableFilterEvent) {
new AjaxEvent(this).queue();
event.setPhaseId(PhaseId.APPLY_REQUEST_VALUES);
}
}
super.queueEvent(event);
}