2011-09-30 5 views
1

약 1 년 전 jQuery의 주역이자 저자 인 Bibeault가 코드 타킷에 대해 의견을 말하면서 JSF 컴포넌트 라이브러리가 모두 만들어지지 않았다는 것을 으로 보았다. 그리고 당신은 자바 스크립트 & jQuery로 많은 것을 할 수 있습니다.JSF 컴포넌트 라이브러리 오퍼링을 대체하는 jQuery 데이터 테이블

jquery UI 대화 상자 ( )로 바뀌었을 때 나는 이것에 대해 신선한 시각을 가지고 있다고 생각했다.

아무 문제가 없었지만 한 가지 문제는 보다 ht : outputText를 더 복잡하게 만드는 것입니다 (약간의 과장이 있음). 방금 하루를 보내고 selectOneMenu가 데이터 테이블에서 작동하며 이전에 작업 코드를 xxx : dataTable에서 다른 것으로 이동했지만 다른 것들이 다른 단계에서 실행 중입니다. 예기치 않은 순서로 AJAX 요청을 보냅니다. 단일 대기열에도 불구하고), 스팀이 나오고 디버거가 나타납니다.

그래서 jQuery datatable 제품 중 하나를 사용하는 것이 생존 할 수 있다고 생각했습니다. 물론 다른 게시물에서도 비교할 수 있습니다.

데이터 테이블 내에서 다양한 JSF 구성 요소를 계속 사용하고 싶습니다. 단지 은 고려해야 할 주요 고려 사항이 있는지 궁금합니다. 상당히 진지한가? jQuery 사용법은 컴포넌트 라이브러리와 함께 일반적인 접근법인가? jQuery와 backing bean 사이의 통합 은 심각한 자극입니까?

버그로 인해 원래 디자인에 따라 할 수 없었던 많은 일들이 있었고 수정을 위해 1 년을 기다리는 것이 지긋졌습니다.

의견을 보내 주셔서 감사합니다.

+0

http://primefaces.org와 (과) 무슨 문제가 있습니까? –

+0

나는 richfaces 포트에 primefaces를 했어. 당신은 workaround 코드의 양에 놀랄거야. v3 릴리즈가 개선 될 것이라고 확신하지만, 위에서 설명한 데이터 테이블 문제는 많은 라이브러리에서 공통적입니다. 옵션을 정렬하는 것이 항상 좋은 생각이며,이 라이브러리는 상호 운용되지 않으므로 구성 요소를 선택하고 혼합 할 수 없습니다. – Oversteer

답변

1

JQuery와 서버 측 기술을 결합하는 것이 좋습니다. 풍부한 서버 측 컨트롤은 출력을 다시 포맷하고 Web 2.0 효과를 구현하는 많은 JavaScript를 생성합니다. 그러나 앞으로의 모든 브라우저에서 얼마나 오래 작동 할 것인지 확신 할 수 없습니다. 자바 스크립트 라이브러리 (JQuery, Mootools 등)의 목적은 브라우저 간 호환성을 보장하는 기본 기능을 사용하는 것입니다.이 기능을 사용하면 기본 플러그인을 만들 수 있습니다. 호환성 문제가 있습니다. 이미 말했듯이 서버 측 테이블 구성 요소를 다른 서버 구성 요소로 변환하는 데 많은 시간을 할애 할 수 있습니다. 그러나 JQuery 플러그인을 사용하면 간단하게 대체 할 수 있습니다. 당신이 웹 테이블을 향상시키기 위해 JQuery와 DataTables를 사용하는 경우 예를 들어 :

$("table#theTableId").jqGrid(); 
:
$("table#theTableId").dataTables(); 

당신은있는 jqGrid 같은 다른 JQuery와 테이블 플러그인으로 교체 할 경우

, 당신과 함께 코드 줄을 대체합니다

선택적으로 초기화 매개 변수를 일부 바꿔야합니다. 유일한 전제 조건은 서버 측 구성 요소가 테이블 소스에 대한 HTML 유효 출력을 생성한다는 것입니다. 마지막으로 Ajax를 사용하고 있다면 JavaScript를 사용하십시오. 이것은 Ajax 기능을 구현하는 가장 자연스럽고 쉬운 방법입니다. 다른 모든 서버 측 구성 요소는 자바 스크립트 코드를 숨기려고 시도하지만이 기능은 기본 기능에서만 가능합니다. 사용자 정의가 필요하다면 자바, 자바 스크립트, 마크 업을 같은 장소에서 혼합하여 업데이트 할 것이고, 많은 업데이트를 한 후에는 JavaScript/JQuery에서 모든 자바 스크립트 관련 기능을 구현하는 것이 더 낫다는 것을 알게 될 것입니다.

관련 문제