2012-02-17 26 views

Trả lời

12

Thông tin phiên bản triển khai JSF chính xác có sẵn trong /META-INF/MANIFEST.MF tệp của tệp JAR triển khai JSF. Nó thường nằm gần cuối tệp kê khai như sau:

Implementation-Title: Mojarra 
Implementation-Version: 1.2_12-b01-FCS 
Implementation-Vendor: Sun Microsystems, Inc. 

Tệp JAR có thể được mở bằng công cụ ZIP. Trong trường hợp Sun RI/Mojarra, tên tệp là jsf-impl.jar, đôi khi đã được thêm số phiên bản chính xác như jsf-impl-1.2_12-b01-FCS.jar. Nếu bạn đang sử dụng triển khai JSF được cung cấp bởi JBoss 4.3.x, thì bạn có thể tìm thấy tệp trong thư mục $JBOSS_HOME/server/<Profile>/deploy/jboss-web.deployer/jsf-libs. Nếu bạn đã cung cấp triển khai JSF của riêng bạn trong /WEB-INF/lib và được cấu hình web.xml để cho JBoss sử dụng nó thay vào đó, thì bạn cần phải kiểm tra nó trong một cái được cung cấp trong /WEB-INF/lib để thay thế.

Hoặc, bạn chỉ có thể có được nó cách lập trình:

Package jsfPackage = FacesContext.class.getPackage(); 
String implTitle = jsfPackage.getImplementationTitle(); 
String implVersion = jsfPackage.getImplementationVersion(); 
String implVendor = jsfPackage.getImplementationVendor(); 

Đối với các faces-config.xml, với nó, bạn cũng có thể kiểm soát những gì phiên bản JSF ứng dụng được thiết kế cho. Vì vậy, nếu bạn tuyên bố nó phù hợp với đặc tả JSF 1.1, thì ngay cả việc triển khai JSF 1.2/2.0 sẽ chạy trong modu tương thích JSF 1.1 ". Nhưng bạn không thể khai báo nó phù hợp với phiên bản mới hơn như JSF 1.2/2.0 khi bạn đang thực sự bằng cách sử dụng triển khai JSF 1.1. Nó sẽ bị lỗi hoặc bị bỏ qua.

Các vấn đề liên quan