JSF学习-导航

转载 2007年09月11日 17:25:00

JSF学习-导航

一、关于jsf导航
1、静态导航
在简单的Web页面中,页面导航是静态的。单击指定按钮总是选择固定的页面来呈现响应。
例:
给命令按钮一个action属性,例如:
<h:commandButton label="testLogin" action="testLogin" />
动作必须匹配导航规则中的outcome: &lt;navigation-rule&gt;
&lt;from-view-id&gt;/test.jsp&lt;/from-view-id&gt;
&lt;navigation-case&gt;
&lt;from-outcome&gt;testLogin&lt;/from-outcome&gt;
&lt;to-view-id&gt;/testResult.jsp&lt;/to-view-id&gt;
&lt;/navigation-case&gt;
&lt;/navigation-rule&gt;
此规则说明:在/test.jsp内,testLogin动作将导航到/testResult.jsp中。
1)视图id字符必须以“/”开始,扩展名应该匹配文件扩展名(.jsp);
2)如果有全局性质的操作,可以不要“form-view-id”;
3)如果导航规则没有匹配特定动作,则只会再次显示当前页面。
2、动态导航
要实现动态导航,提交按钮必须有一个方法引用(method reference),例如
&lt;h:commandButton label="test_dynamic" action="#{backBean.testLogin}"/&gt;
action属性中的方法引用没有参数,其返回值类型是String。
例:
public String testLogin(){
if(true){
return "sucess";
}else{
return "failure";
}
}
此方法返回一个结果字符串。导航处理器使用返回的字符串来查找匹配的导航规则。
〔action方法如果返回null,表示重新显示同一页面。〕
单击命令按钮,如action属性是方法引用时,所执行的步骤如下:
a、提取指定的bean。
b、调用引用的方法。
c、结果字符串将被传递到导航处理器。
一般在需要执行分支行为时,需要在bean类中提供相应的方法引用(原则:最好的方法是找到一个类,它包含决策所需的全部数据);
3、高级导航问题
1)重定向
如果在to-view-id之后添加redirect元素,jsp容器会终止当前请求,并发送http重定向到客户端。重定向响应告诉客户端下一个页面使用哪个URL。
重定向页面比转发页面慢,因为需要到浏览器进行另外一次往返。但是重定向允许浏览器更新地址,一般作为书签的页面可以使用redirect元素。
本文转自
http://zhangyaozhou.bokee.com/viewdiary.13131413.html
标签词:
导航 重定向 页面 字符串 单击 命令按钮 action 静态 规则 处理器 

相关文章推荐

JSF--导航

本文介绍配置Web应用程序的导航,用户在浏览器上的操作产生的相关结果将被传送到服务器;服务器中的Web应用程序分析用户输入,确定使用哪个JSF页面来呈现相应,导航处理程序负责选择下一个JSF页面。在 ...

JSF导航规则(Navigation)

JSF 导航规则(Navigation)学习笔记 JSF 导航规则 静态导航    1 静态导航规则实例    1 静态导航执行流程    1 静态导航处理规则    1...

JSF---->导航规则设置

一、导航规则简介 在JSF中是根据faces-config.xml中设定,以决定在符合的条件成立时,该连结至哪一个页面。一个基本的设定如下: /pages/index.jsp ...

AnyFo - JSF 九阴真经

  • 2009年01月05日 14:49
  • 428KB
  • 下载

JSF复习系列(2)--迭代器的直观体现dataTable使用详解

一、标签简介1.1 概念  JSF允许使用h:dataTable标签来放置组件,利用迭代器原理,遍历数据来创建html表格。1.2 适用条件  遍历的内容应为以下类型的数据:   java对象 数组...

jsf3导航规则(标签)

  • 2008年04月15日 22:52
  • 1.66MB
  • 下载

JSF复习系列(1)--EL表达式

一、前言  最近在写一个小东西,发现好多问题都出在JSF上,故决定趁着暑假好好研究一下JSF,尽管已经学JSF快一年了,现在还要回头来学习JSF,有点打脸的感觉,且不顾这些了,好好学。二、EL表达式2...

JSP/Servlet/JSF--Java异常框架设计

什么是异常?       异常(exception)应该是异常事件(exceptional event)的缩写。       异常定义:异常是一个在程序执行期间发生的事件,它中断正在执行的程序的...

JSF深入--控制跳转(权限控制)

JSF深入--控制跳转 B/S通常我们的权限控制包括以下几个方面:1,Web层访问权限控制(包括URL级或Button/Link级);2,业务逻辑访问控制,主要指业务逻辑中方法级的权限控制;3,数据...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSF学习-导航
举报原因:
原因补充:

(最多只允许输入30个字)