문제

과거에는 Java 및 JSP 프로그래밍을 해보았지만 Java Server Faces를 처음 접했고 JSF 개발을위한 모범 사례가 있는지 알고 싶습니다.

도움이 되었습니까?

해결책

일부 도움말 : JSF 요청 라이프 사이클 및 다양한 코드 조각이 적합한 위치 이해그것.특히 유효성 검사 오류가있는 경우 모델 값이 업데이트되지 않는 이유를 알아보세요.

태그 라이브러리를 선택한 다음 그대로 유지합니다.시간을내어 요구 사항을 확인하고 다양한 라이브러리를 프로토 타이핑하십시오.다른 taglib를 혼합하면 정신 건강에 심각한 해를 끼칠 수 있습니다.

다른 팁

facelet 사용을 고려하세요. 이는 JSF 개발의 최악의 부분을 크게 단순화합니다.지금은 facelet없이 CMS 기반 JSF 프로젝트를 수행하고 있는데 (프로젝트를 수행 한 후) 왼팔이없는 것 같습니다 ....

저는 계약자에게 3 개월 동안 비용을 지불하는 것을 의미하더라도 JSF에서 경험이있는 누군가가 JSF에서 첫 번째 프로젝트를 이끌도록 강력히 권장합니다. JSF 접근 방식은 JSP와 매우 다릅니다. 접근 방식과 문제 해결 방식은 매우 다릅니다.

라이브러리

다음 라이브러리를 고려하십시오.

  • Tomahawk
  • RichFaces
  • 셰일
  • 트리니다드
  • 아키텍처

    MVC 를 받아들이십시오. 이것이 의미하는 바를 알뿐만 아니라 사용해야합니다. 광범위하게.

    컨트롤러와 뷰를 연결하는 두 가지 주요 패턴이 있습니다.

    Dot Net Style, 뷰당 하나의 요청 컨트롤러

    모든 최상위 페이지에는 요청 범위 컨트롤러 (bean)가 있습니다. 페이지의 모든 유효성 검사 및 작업은이 클래스를 사용합니다. 모델 필터링 및 주문에도 사용됩니다. 모델은 백엔드 (EJB 또는 지속성 계층)와의 통신을 처리 할 몇 개의 세션 수준 컨트롤러에 저장됩니다. 이러한 세션 컨트롤러는 비즈니스 로직을 구현해야하며 JSF, HTML 또는 프레젠테이션 기술에 대한 지식이 없어야합니다.

    컨트롤러는 세션 수준입니다.

    데이터 모델을 기반으로 컨트롤러를 설계하고 서로 중첩합니다. (이 게시물이 너무 길어 지므로 자세한 내용은 다루지 않겠습니다.)

    필요한 지식

    모두 :

  • 페이 슬릿에 대한 내 투표를 추가합니다.최근에 facelet을 사용하는 프로젝트를 업그레이드했으며 jsf로 몇 가지 큰 문제를 해결했습니다. 특히 상자에서 꺼내 자마자 괜찮은 템플릿 시스템을 제공하고 "verbatim"으로 래핑하지 않고 적절할 때 표준 html을 사용할 수 있도록합니다.-태그.
  • RestFaces는 많은 사람들이 불평하는 가져 오기 / 게시 문제에 대한 해결책입니다.또한 잘 문서화되어 있고 사용하기 쉽습니다.
  • 많은 taglib를 사용하지 마십시오.업그레이드 할 때 작업이 훨씬 더 어려워집니다.
  • SEAM은 많은 JSF 모범 사례를 수집하고 있지만 아직 사용하지 않았기 때문에 실제로 권장 할 수는 없습니다. 한 번 살펴 보시는 것이 좋습니다.

저는 IBM의 JSf 구현을 사용해 왔으며 몇 가지 의견이 있습니다.나쁜 길은 아니지만 IBM의 '생활 방식'에 전념해야합니다.그들은 JSF 표준을 확장하는 자체 태그 lib를 작성했습니다.자주 업데이트되지 않는 RAD (Rational Application Developer) 내부에 머무를 수 있다면 통합이 때때로 버그가 있지만 전반적으로 괜찮습니다.또한 WebSphere와의 통합도 꽤 좋습니다.고용주가 IBM과 골프를 치지 않는 한 가능한 한 바닐라를 유지하는 것이 좋습니다.

교차 필드 / 양식 수준 유효성 검사에 대한 "모범 사례"를 아직 알지 못합니다.

즉, JSF 유효성 검사는 현재 단일 필드 유효성 검사를 지향합니다.IMO는 복잡한 교차 필드 / 양식 수준 유효성 검사를 볼 때 추악합니다.

오래되었지만 여전히 정확 해 보입니다. http://weblogs.java.net/blog/johnreynolds/archive / 2004 / 07 / improve_jsf_by_1.html

http://www.jroller.com/robwilliams/entry/jsf_multi_field_validation_not

흥미로운 기사를 찾을 수있는 다음 링크를 확인할 수 있습니다.

http://www.jsftutorials.net/

좋은 구성 요소 라이브러리를 선택하십시오. richfaces를 사용하지 마십시오.하지만 필요한 경우 사용하기 쉽고 충분한 구성 요소가있는 프라임 페이스를 사용합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top