程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2EE >> 通過JSF 2實現可重用的Ajax化組件(3)

通過JSF 2實現可重用的Ajax化組件(3)

編輯:J2EE

清單2.User類

  1. package com.coreJSf;
  2. import Java.io.Serializable;
  3. import Javax.inject.Named;
  4. import Javax.enterprise.context.SessionScoped;
  5. @Named()
  6. @SessionScoped
  7. public class User implements Serializable {
  8. private String country;
  9. public String getCountry() { return country; }
  10. public void setCountry(String country) { this.country = country; }
  11. }

請注意@Named注釋,它與@SessionScoped一起實例化了一個名稱為user的托管bean,並在JSF第一次在facelet中遇到#{user.country}時將它置於session作用域中。此應用程序中唯一的#{user.country}引用發生在清單1中,其中,我將user托管bean的country屬性指定為<util:autoComplete>組件的值。

清單3顯示了AutoComplete類,該類定義了countrIEs屬性,即自動完成組件的完成項目列表:

清單3.完成項目

  1. package com.coreJSf;
  2. import Java.io.Serializable;
  3. import Javax.enterprise.context.ApplicationScoped;
  4. import Javax.inject.Named;
  5. @Named
  6. @ApplicationScoped
  7. public class AutoComplete implements Serializable {
  8. public String[] getLocations() {
  9. return new String[] {
  10. "Abari", "Absurdsvanj", "Adjikistan", "AfroMacoland",
  11. "Agrabah", "Agaria", "Aijina", "Ajir", "Al-Alemand",
  12. "Al Amarja", "Alaine", "Albenistan", "Aldestan",
  13. "Al Hari", "Alpine Emirates", "Altruria",
  14. "AllIEd States of America", "BabaKiueria", "Babalstan",
  15. "Babar's Kingdom","Backhairistan", "Bacteria",
  16. "Bahar", "Bahavia", "Bahkan", "Bakaslavia",
  17. "Balamkadar", "Baki", "Balinderry", "Balochistan",
  18. "Baltish", "Baltonia", "Bataniland, Republic of",
  19. "BayvIEw", "Banania, Republica de", "Bandrika",
  20. "Bangalia", "Bangstoff", "Bapetikosweti", "Baracq",
  21. "Baraza", "Barataria", "Barclay Islands",
  22. "Barringtonia", "Bay VIEw", "Basenji",
  23. };
  24. }
  25. }

自動完成組件的使用方法已經介紹完畢。現在,您將了解它的工作原理。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved