> Java > java지도 시간 > JSF 1.2에서 JSF 2.0으로 마이그레이션할 때의 과제는 무엇이며, 이러한 과제는 사용된 뷰 기술에 따라 어떻게 달라지나요?

JSF 1.2에서 JSF 2.0으로 마이그레이션할 때의 과제는 무엇이며, 이러한 과제는 사용된 뷰 기술에 따라 어떻게 달라지나요?

Mary-Kate Olsen
풀어 주다: 2024-12-28 03:08:10
원래의
634명이 탐색했습니다.

What are the challenges of migrating from JSF 1.2 to JSF 2.0, and how do these challenges vary depending on the view technology used?

JSF 1.2에서 JSF 2.0으로 마이그레이션 할 때의 통증

JSF 1.2에서 2.0 로 업그레이드 할 때의 통증은 현재 사용중인 뷰 기술과 향후 사용할 예정인 뷰 기술에 따라 다릅니다. 아니요.

    Facelets 1.x에서 Facelets 2.0 = 번거로움은 작습니다.
  • 많은 양의 노력이 필요합니다. 사용자 정의 구성 요소가 있으면 더 두 배가됩니다. 해야합니다.
  • 에서 제거합니다(있는 경우). 에 웹 애플리케이션 라이브러리를 로드하도록 클래스 로딩 정책을 수정하는 것을 고려하십시오. 클래스 로딩의 문제도 참조). 을 사용하는 경우 위의 XML 스 니펫 전체에서 http://java.sun.com 대신 http://xmlns.jcp.org 네임스페이스 도메인을 사용합니다. 는 2.4 아래에서는 작동하지 않습니다 (그러나 해킹은 가능합니다). .sun.com 대신 http://xmlns.jcp.org 네임스페이스 도메인을 사용합니다. 🎜> 사용하는 경우에는 기본적으로 다른 것을 변경할 필요가 없습니다. 사용하고
  • 그대로
  • 사용하고 싶다면, FacesServlet은 먼저
.xhtml 파일을 스캔하고 존재하지 않는 경우 *.jsp 파일을 스캔하는 것을 기억하는 것이 좋습니다. 변환을 할 수 있습니다.

그러나 접두사 URL 패턴 (예 : /faces/)을 사용하고 JSP에서 Facelets로 단계적으로 업그레이드하는 경우이를 .jsf로 변경하고 경우에 따라 기존 JSP 페이지의 모든 링크도 변경해야 합니다.

새로운 JSF 2.0 제공의 암시적인 탐색은 파일의 존재를 스캔하지 않고 어쨌든 outcome.xhtml로 이동한다는 점에 유의하십시오. 따라서, .jsp 로부터 이동하는 경우나 .jsp 로 이동하는 경우는, 여전히 JSF 1.x 의 방법으로 뷰 ID 에 그것을 포함할 필요가 있습니다.

Facelets 1.x에서 Facelets 2.0

보기 기술로 Facelets 1.x를 사용하고 JSF 2.0과 함께 제공되는 Facelets 2.0 을 사용하려면 다음 추가 단계를 수행해야 합니다.

    Facelets 1.x JAR을 /WEB-INF/lib에서 제거합니다.
  • Facelets 1.x FaceletViewHandler를 faces-config.xml에서 제거합니다.
  • 커스텀 FaceletViewHandler 구현이 있는 경우는, ViewHandlerWrapper 를 확장하도록(듯이) 갱신할 필요가 있습니다.
  • 필요하지 않지만 정리를 위해 web.xml에서 Facelets 1.x 관련 값 (javax.faces.DEFAULT_SUFFIX의 값은 *.xhtml 등)을 제거합니다. . 이것은 Facelets 2.0에서는 이미 기본값입니다.
  • 기존 Facelet 태그 라이브러리 XML의 루트 선언을 Facelets 2.0을 준수하도록 업데이트합니다.
  <faces-config
      xmlns="http://java.sun.com/xml/ns/javaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
      version="2.0">
로그인 후 복사
로그인 후 복사
참고: JSF 2.2 이상을 사용하는 경우 위의 XML 스니펫 전체에서 http://java.sun.com 대신 http://xmlns.jcp .org 네임스페이스 도메인을 사용합니다.

이것으로 기본적으로 부족합니다.

JSP 2.x에서 Facelets 2.0

보기 기술로

JSP 2.x를 사용하고 있으며, Facelets 2.0로 즉시 업그레이드 원하는 경우 사이트를 게시하기 전에 많은 변경을 해야 합니다. 여기에서는 기본적으로 뷰 기술을 변경하고 있습니다.

마스터 페이지 변경

모든 마스터 페이지에서 다음 기본 JSP 템플릿을 변경해야 합니다.

  <web-app 
      xmlns="http://java.sun.com/xml/ns/javaee"
      xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     >
로그인 후 복사
다음 기본 Facelets 템플릿으로 변경합니다.

  <facelet-taglib 
      xmlns="http://java.sun.com/xml/ns/javaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"
      version="2.0">
로그인 후 복사
참고: JSF 2.2 이상을 사용하는 경우 위의 XHTML 스니펫 전체에서 http://java.sun.com 대신 http://xmlns.jcp.org 이름 공간 도메인을 사용합니다.

Include 페이지 변경

기존의 JSP 페이지가 올바르게 설계되어 있는 경우, scriptlet 코드의 행은 없고, 유일한 JSP 고유의 태그는 만이 있어야합니다. 다음은 다음과 같이 변경해야합니다. 템플릿 ...

  <faces-config
      xmlns="http://java.sun.com/xml/ns/javaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
      version="2.0">
로그인 후 복사
로그인 후 복사

... 다음 기본 Facelets 포함 페이지의 템플릿으로 변경해야 합니다.

위 내용은 JSF 1.2에서 JSF 2.0으로 마이그레이션할 때의 과제는 무엇이며, 이러한 과제는 사용된 뷰 기술에 따라 어떻게 달라지나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿