실제로이 문제에 대한 내장 JSF 솔루션은 없습니다 (RichFaces 및 PrimeFaces에는 끌어서 놓기 구성 요소가 있지만 사용자의 경우에는 작동하지 않습니다). (주석에 기반을 둔)
편집 : 최후의 자원으로,이 문제를 처리하는 jQuery 플러그인과 (좋은 예와) 좋은 자습서가
에 대한 경우 항목을 채운 후 목록을 정렬해야합니다. 이 경우에 대한 코드 샘플 :
@ManagedBean
@ViewScoped
public class MyBean {
//attributes...
private List<Element> myList;
public MyBean() {
myList = getMyListValues(); //just to get the idea
Comparator<Element> comparator = new Comparator<Element>() {
@Override
public int compare(Element e1, Element e2) {
//A basic logic for a comparator, assuming there is an Id attribute
//in Element class. Also, make sure to test for null values (just in case...)
return (e1.getId() > e2.getId()) ? 1 : (e1.getId() < e2.getId()) -1 : 0;
}
};
Collections.sort(myList, comparator);
}
//getters and setters for the attributes...
}
목록을 정렬 한 후 <h:dataTable>
를 사용하여 표시 할 수 있으며 정렬됩니다.
참고 : getMyList()
메서드로 목록을 정렬하지 마십시오. JSF 프레임 워크는 getter 및 setter에 대한 호출을 1 회 이상 수행하므로이 메서드에 무거운 논리가 없어야합니다.
답변 주셔서 감사합니다. Luiggi. 내가 나 자신을 설명했는지 모르겠다. 나는 그들을 보여주기 전에 항목을 정렬하고 싶다. 정렬 작업은 컨트롤러에서 발생합니다. 사용자가 정렬 할 수있는 솔루션이 무엇인지 이해합니다. – user1020015
@ user1020015 답변은 회원님의 의견을 기반으로 수정되었습니다. –