网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 网络学院 >> 程序设计 >> Java编程 >> 文章正文
  JSF学习-导航            【字体:
JSF学习-导航
作者:佚名    文章来源:不详    点击数:    更新时间:2007-9-12    

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 静态 规则 处理器 




本文来源:http://blog.csdn.net/afar/archive/2007/09/11/1780932.aspx
站内文章搜索 高级搜索
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
     用java实现web服务器
     用java快速开发linux gu…
     正则表达式分解siemens交…
     [portal参考手册]目录
     jsp中调用oracle存储过程…
  • JSP中JavaBean的生命周期

  • JSF 的性能远不及 JSP 或 St…

  • JSP学习经验总结

  • Struts2学习:在struts2中集…

  • 保留weblogic 中jsp编译后生…

  • (JSP)在文本域中显示超链接n…

  • Jsp 应用之自定义标签库(tag…

  • JSP标准模板库(JSTL)入门教…

  • 一个一年工作经验的java工程…

  • 搭建JSTL运行环境

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    网络学院©2007 www.23book.net
    为您提供web编程,vb编程,vc编程,服务器架设管理,数据库设计等方面的知识 站长:David