JSF-页面导航
页面导航
1)导航处理涉及的术语:
-动作值:触发动作事件的组件的action:EL方法表达式.字符串文字。
-结果值:动作组件的action属性的:EL方法表达式的返回值.字符串文字;或结果组件的outcome的值表达式计算结果...
-视图ID:以“/”开头、相对于应用上下文路径的视图(页面)URL。
2)隐式导航
当未定义导航规则或没有匹配的导航规则时,导航处理器将结果值看做目标视图ID。如果结果值不以“/”开头,则在其前添加源视图相对于应用上下文路径的路径。如果结果不含扩展名,则在其后添加源视图的文件扩展名。
3)导航规则
每一个配置文件可包含多个navigation-rule元素
每个navigation-rule声明一个导航规则navigation-case
在navigation-rule元素中:
·from-view-id子元素用于指定源视图的视图ID
·navigation-case子元素声明一个导航案例
如:<navigation-rule>
<from-view-id>/indexs.xhtml</from-view-id>
<navigation-case>
<from-action>#{myBean.action}</from-action>
<if>#{myBean.valid}</if>
<to-view-id>#{myBean.nextViewID}</to-view-id><!--也可以直接指定目标视图ID-->
<redirect/></navigation-case>
</navigation-rule>
在navigation-case元素中:
·from-outcome:用于指定适用该导航案例的结果值
·from-action:用于指定适用该导航案例的动作值
·if:一个布尔型的值表达式,判断该导航案例是否匹配动态条件
4)导航算法
依次检索相匹配的导航规则,通常是指from-view-id元素内容为源视图ID的导航规则。
对于每一个导航规则,依次检索相匹配的导航案例。
5)重定向
在h:commandButton或者h:commandLink形成的POST请求中,可以在navigation-case中插入redirect子元素,或在元素值中添加名为faces-redirect,值为true的请求参数,要求JSF框架重定向至目标视图
状态码为302表示重定向;响应头包括Location,指定重定向的目标页面的URL。
6)结果类标记: h:link h:button
结果类标记组件在呈现时,都会根据outcome计算结果值。
然后由导航处理器根据结果值确定目标视图。
单击由结果类标记呈现的超链接或者按钮将产生目标视图的GET请求,如:
<h:link value-"返回主页" outcome="index"/>
<h:button value="GET请求"/>
7)视图参数
在JSF中添加f:viewParam元素、声明视图参数:
<f:metadata><f:viewParam name="t1" value="#{me.t1}"/><!--若存在名为t1的查询参数--><!--me受管Bean的setT1调用,传入参数-->
</f:metadata>
JSF-页面导航的更多相关文章
- wp8.1 页面返回 页面导航
public The_second() public second() { this.InitializeComponent(); Frame frame = Window.Current.Conte ...
- Windows Phone 8.1 新特性 - 页面导航
本篇介绍一下Windows Phone 8.1 中页面导航的实现方式. 大家对Windows Phone 8 中页面导航的实现一定不陌生,我们使用 NavigationService 来实现.具体写法 ...
- WinPhone学习笔记(一)——页面导航与页面相关
最近学一下Windows Phone(接下来简称“WinPhone”)的开发,在很久很久前稍探究一下WinPhone中对一些传感器的开发,那么现在就从头来学学WinPhone的开发.先从WinPhon ...
- JSF页面中使用js函数回调后台bean方法并获取返回值的方法
由于primefaces在国内使用的并不是太多,因此,国内对jsf做系统.详细的介绍的资料很少,即使有一些资料,也仅仅是对国外资料的简单翻译或者是仅仅讲表面现象(皮毛而已),它们的语句甚至还是错误的, ...
- 【Win10】页面导航的实现
注:本文基于 Windows 10 10240 及其 SDK 编写,若以后有变化,请以新版本为准. 页面导航我们是再熟悉不过了,浏览器.手机 App 大多都使用这种方式来展示内容.在 Windows ...
- wp8.1 Study1: 页面导航&页面间值传递
摘要:wp8.1与wp8中很多API是不一样了,wp8.1把以前wp7.x时的api去掉了,更多与win8.1的API相似.比如以下的页面导航和页面之间的值传递 1.页面导航 利用Frame.Navi ...
- 与众不同 windows phone (27) - Feature(特性)之搜索的可扩展性, 程序的生命周期和页面的生命周期, 页面导航, 系统状态栏
原文:与众不同 windows phone (27) - Feature(特性)之搜索的可扩展性, 程序的生命周期和页面的生命周期, 页面导航, 系统状态栏 [索引页][源码下载] 与众不同 wind ...
- windows phone 页面导航(6)
原文:windows phone 页面导航(6) 页面导航的例子我们使用的是两个页面,从第一个页面(MainPage)导航到第二个页面(SecondPage),然后可以从第二个页面导航到第一个页面 , ...
- JSF页面中使用js函数回调后台action方法
最近遇到了一个问题就是在JSF页面中嵌入html页面,这个html页面中很多功能是使用js动态生成的,现在需要在js函数里想去调用JSF中action类method()方法并动态传送数据给后台进行处理 ...
- Win10系列:JavaScript页面导航
页面导航是在开发应用的过程中使用频率较高的技术,其中比较常用的导航方式有多页导航和页内导航,采用多页导航方式的应用程序包含一系列的页面,在一个页面中加入另一个页面的链接地址后,单击链接将跳转到指定页面 ...
随机推荐
- MySQL慢查询优化 EXPLAIN详解
我们平台过一段时间就会把生产数据库的慢查询导出来分析,要嘛修改写法,要嘛新增索引.以下是一些笔记.总结整理 慢查询排查 show status; // 查询mysql ...
- UNIX环境高级编程——标准I/O库缓冲区和内核缓冲区的区别
1.C标准库的I/O缓冲区 UNIX的传统 是Everything is a file,键盘.显示器.串口.磁盘等设备在/dev 目录下都有一个特殊的设备文件与之对应,这些设备文件也可 ...
- noSQL数据库相关软件介绍(大数据存储时候,必须使用)
目前图数据库软件七种较为流行:Neo4J, Infinite Graph, DEX,InfoGrid, HyperGraphDB, Trinity, AllegroGraph(http://tech. ...
- nginx 安装php
1. 安装PHP 5.5.0 下载 1 2 cd /usr/local/src/ wget http://www.php.net/get/php-5.5.0.tar.bz2/from/jp1.ph ...
- gc实例与gc报告的阅读
gc报告的阅读 首先我们看一条gc报告 D:\杂项\java>java -verbose:gc -Xms20m -Xmx20m -Xmn10m -XX:+PrintGCDetails -XX:+ ...
- node.js 抓取
http://blog.csdn.net/youyudehexie/article/details/11910465 http://www.tuicool.com/articles/z2YbAr ht ...
- AngularJS进阶(四)ANGULAR.JS实现下拉菜单单选
ANGULAR.JS: NG-SELECT AND NG-OPTIONS PS:其实看英文文档比看中文文档更容易理解,前提是你的英语基础还可以.英文文档对于知识点讲述简明扼要,通俗易懂,而有些中文文档 ...
- FFMPEG结构体分析:AVCodecContext
注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...
- 网站开发进阶(三)Windows NAT端口映射
Windows NAT端口映射 由于有需求进行端口映射,又不想装乱七八糟的软件,Windows本身自带的路由远程访问配置太麻烦,还要两块网卡,坑爹啊. 其实Windows本身命令行支持配置端口映射,条 ...
- Globalization Guide for Oracle Applications Release 12
Section 1: Overview Section 2: Installing Section 3: Configuring Section 4: Maintaining Section 5: U ...