WEB开发网
开发学院WEB开发Jsp JSF 2简介:JSF向导 阅读

JSF 2简介:JSF向导

 2010-10-26 12:59:18 来源:Web开发网   
核心提示:此应用程序在 Questions 类内还包含了一个问题数组,如清单 2 所示:清单 2. Questions beanpackagecom.clarity;importjava.io.Serializable;importcom.corejsf.util.Messages;publicclassQuestionsimp

此应用程序在 Questions 类内还包含了一个问题数组,如清单 2 所示:

清单 2. Questions bean

package com.clarity;

import java.io.Serializable;

import com.corejsf.util.Messages;

public class Questions implements Serializable {
  private static final long serialVersionUID = -7148843668107920897L;

  private String question;
  private Question[] questions = {
   new Question(
     Messages.getString("com.clarity.messages", "expandQuestion", null),
     new String[] {
      Messages.getString("com.clarity.messages", "hydrogen", null),
      Messages.getString("com.clarity.messages", "helium", null),
      Messages.getString("com.clarity.messages", "water", null),
      Messages.getString("com.clarity.messages", "asphalt", null)
     }),

   new Question(
     Messages.getString("com.clarity.messages", "waterSGQuestion", null),
     new String[] {
      Messages.getString("com.clarity.messages", "onedotoh", null),
      Messages.getString("com.clarity.messages", "twodotoh", null),
      Messages.getString("com.clarity.messages", "onehundred", null),
      Messages.getString("com.clarity.messages", "onethousand", null)
     }),

   new Question(
     Messages.getString("com.clarity.messages", "numThermoLawsQuestion", null),
     new String[] {
      Messages.getString("com.clarity.messages", "one", null),
      Messages.getString("com.clarity.messages", "three", null),
      Messages.getString("com.clarity.messages", "five", null),
      Messages.getString("com.clarity.messages", "ten", null)
     }),

   new Question(
     Messages.getString("com.clarity.messages", "closestSunQuestion", null),
     new String[] {
      Messages.getString("com.clarity.messages", "venus", null),
      Messages.getString("com.clarity.messages", "mercury", null),
      Messages.getString("com.clarity.messages", "mars", null),
      Messages.getString("com.clarity.messages", "earth", null)
     })
  };

  public int size()            { return questions.length; }
  public String getQuestion()       { return question; }
  public void setQuestion(String question) { this.question = question; }
  public Question[] getQuestions()     { return questions; }
}

清单 1 和 清单 2 均没有什么特别之处 — 它们只是提供给我服务器上的一列问题 — 不过其中有一点值得一提,即我借助编程的方式用 helper 方法从一个资源包拉出字符串。您可以通过 下载此代码 来了解这个方法是如何工作的,而在 Core JavaServer Faces 则可以更深入地阅读到相关信息。

以上就是对此应用程序的 bean 的全部介绍了,只有一点需要补充,即 Wizard bean,它充当了此向导的控制器 。它里面的代码是此应用程序内惟一真正有趣的 Java 代码。我在 CDI: Dependency injection and conversations 部分,还会讨论这个 Wizard bean。

您对应用程序内的文件和这些 question bean 有所了解后,我接下来将向您显示我是如何实现这个向导的视图的。

模板和视图

对于大多数的向导,您可以放心地归纳出向导的结构,如图 4 所示:

图 4. 向导的结构

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

Tags:JSF 简介 JSF

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