WEB开发网
开发学院软件开发Java JSF 2 fu: Ajax 组件 阅读

JSF 2 fu: Ajax 组件

 2010-06-08 00:00:00 来源:WEB开发网   
核心提示: 清单 1 中的 facelet 通过声明适当的名称空间 — util — 以及借助组件的相关标记(<util:autoComplete>)来使用 autoComplete 复合组件,注意 清单 1 中 <util:autoComplete> 标记的

清单 1 中的 facelet 通过声明适当的名称空间 — util — 以及借助组件的相关标记(<util:autoComplete>)来使用 autoComplete 复合组件。

注意 清单 1 中 <util:autoComplete> 标记的两个属性:

value 是名称为 user 的托管 bean 的国家属性。

completionItems 是字段的完成项目的初始集。

User 类是一个简单的托管 bean,专为本例而设计。其代码如 清单 2 所示:

清单 2. User 类

package com.corejsf; 
 
import java.io.Serializable; 
 
import javax.inject.Named; 
import javax.enterprise.context.SessionScoped; 
 
@Named() 
@SessionScoped 
public class User implements Serializable { 
 private String country; 
 public String getCountry() { return country; } 
 public void setCountry(String country) { this.country = country; } 
} 

请注意 @Named 注释,它与 @SessionScoped 一起实例化了一个名称为 user 的托管 bean,并在 JSF 第一次在 facelet 中遇到 #{user.country} 时将它置于 session 作用域中。此应用程序中唯一的 #{user.country} 引用发生在 清单 1 中,其中,我将 user 托管 bean 的 country 属性指定为 <util:autoComplete> 组件的值。

清单 3 显示了 AutoComplete 类,该类定义了 countries 属性,即自动完成组件的完成项目列表:

清单 3. 完成项目

package com.corejsf; 
 
import java.io.Serializable; 
 
import javax.enterprise.context.ApplicationScoped; 
import javax.inject.Named; 
 
@Named 
@ApplicationScoped 
public class AutoComplete implements Serializable { 
  public String[] getLocations() { 
   return new String[] { 
    "Abari", "Absurdsvanj", "Adjikistan", "Afromacoland", 
    "Agrabah", "Agaria", "Aijina", "Ajir", "Al-Alemand", 
    "Al Amarja", "Alaine", "Albenistan", "Aldestan", 
    "Al Hari", "Alpine Emirates", "Altruria", 
    "Allied States of America", "BabaKiueria", "Babalstan", 
    "Babar's Kingdom","Backhairistan", "Bacteria", 
    "Bahar", "Bahavia", "Bahkan", "Bakaslavia", 
    "Balamkadar", "Baki", "Balinderry", "Balochistan", 
    "Baltish", "Baltonia", "Bataniland, Republic of", 
    "Bayview", "Banania, Republica de", "Bandrika", 
    "Bangalia", "Bangstoff", "Bapetikosweti", "Baracq", 
    "Baraza", "Barataria", "Barclay Islands", 
    "Barringtonia", "Bay View", "Basenji", 
   }; 
  } 
} 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:JSF fu Ajax

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接