`
tntxia
  • 浏览: 1488199 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

导航规则设置

阅读更多
在JSF中是根据faces-config.xml中<navigation-rule>设定,以决定在符合的条件成立时,该连结至哪一个页面,一个基本的设定如下:
....
    <navigation-rule>
        <from-view-id>/pages/index.jsp</from-view-id>
        <navigation-case
>
            <from-outcome>success</from-outcome>
            <to-view-id>/pages/welcome.jsp</to-view-id>
        </navigation-case
>
        <navigation-case
>
            <from-outcome>failure</from-outcome>
            <to-view-id>/pages/index.jsp</to-view-id>
        </navigation-case
>
    </navigation-rule>
 ....

  对于JSF,每一个视图(View)都有一个独特的识别(identifier),称之为View ID,在JSF中的View ID是从Web应用程序的环境相对路径开始计算,设定时都是以/作为开头,如果您请求时的路径是/pages/index.faces,则JSF会将扩展名改为/pages/index.jsp,以此作为view-id。

  在<navigation-rule>中的<from-view-id>是个选择性的定义,它规定了来源页面的条件,<navigation-case>中定义各种导览条件,<from-outcome>定义当窗体结果符合的条件时,各自改导向哪一个目的页面,目的页面是在<to-view-id>中定义。

  您还可以在<navigation-case>中加入<from-action>,进一步规范窗体结果必须根据哪一个动作方法(action method),当中是使用 JSF Expression Language 来设定,例如:

....
    <navigation-rule>
        <from-view-id>/pages/index.jsp</from-view-id>
        <navigation-case
>
            <from-action>#{user.verify}</from-action>
            <from-outcome>success</from-outcome>
            <to-view-id>/pages/welcome.jsp</to-view-id>
        </navigation-case
>
        ....
    </navigation-rule>
 ....

  在导航时,预设都是使用forward的方式,您可以在<navigation-case>中加入一个<redirect/>,让JSF发出让浏览器重新导向(redirect)的header,让浏览器主动要求新网页,例如:

....
    <navigation-rule>
        <from-view-id>/pages/index.jsp</from-view-id>
        <navigation-case
>
            <from-outcome>success</from-outcome>
            <to-view-id>/pages/welcome.jsp</to-view-id>
            <redirect/>
        </navigation-case
>
        ....
    </navigation-rule>
 ....

您的来源网页可能是某个特定模块,例如在/admin/下的页面,您可以在<from-view-id>中使用wildcards,也就是使用 * 字符,例如:

....
    <navigation-rule>
        <from-view-id>/admin/*</from-view-id>
        <navigation-case
>
            <from-action>#{user.verify}</from-action>
            <from-outcome>success</from-outcome>
            <to-view-id>/pages/welcome.jsp</to-view-id>
        </navigation-case
>
        ....
    </navigation-rule>
 ....

在上面的设定中,只要来源网页是从/admin来的,都可以开始测试接下来的<navigation-case>。

  <from-view-id>如果没有设定,表示来源网页不作限制,您也可以使用 * 显式的在定义档中表明,例如:

....
    <navigation-rule>
        <from-view-id>/*</from-view-id>
        <navigation-case
>
        ....
    </navigation-rule>
 ....

或者是这样:

....
    <navigation-rule>
        <from-view-id>*</from-view-id>
        <navigation-case
>
        ....
    </navigation-rule>
 ....
分享到:
评论

相关推荐

    JSF入门pdf

    1.4导航规则设置 1.5 JSF Expression Language 1.6国际化信息 2. Managed Beans 2.1 Backing Beans 2.2 Beans的配置与设定 2.3 Beans上的List, Map 3. 数据转换与验证 3.1 标准转换器 3.2自定义转换器 3.3标准验证器...

    不规则形状排列的css菜单导航.zip

    4种不同风格的纯CSS菜单导航

    java server face 教程

    o 导航规则设置 o JSF Expression Language o 国际化讯息 • Managed Beans JSF 使用 Bean 来达到逻辑层与表现层分离的目的,Bean 的管理集中在组态档 案中,您只要修改组态档案,就可以修改 Bean 之间的相依关系。 ...

    JSF教程 中文版

    部分内容截取: 1. 入门 1.1 简介JSF 1.2 第一个JSF程序 1.3简单的导航 Navigation 1.4导航规则设置 1.5 JSF Expression Language 1.6国际化信息 ......

    JSF基础教程 简体中文

    o 导航规则设置 o JSF Expression Language o 国际化讯息 Managed Beans JSF 使用 Bean 来达到逻辑层与表现层分离的目的,Bean 的管理集中在组态档案中,您只要修改组态档案,就可以修改 Bean 之间的相依关系。 o ...

    最新discuz伪静态规则+设置详解【多版本】

    最新discuz伪静态规则+设置详解 多版本 伪静态效果:https://www.foxconnpx.cn/productinfo-3022.html或者https://www.ixcpx.cn/xidian/ 所谓动态地址就是带有?号如https://www.sjwxjc.cn/?type=productinfo&id=533...

    JSF入门必看

    1.1 简介 JSF 1.2 第一个 JSF 程序 1.3 简单的导航 Navigation 1.4 导航规则设置 1.5 JSF Expression Language 1.6 国际化信息 2. Managed Beans

    APP软件应用下载导航网站源码/APP分享下载页引流导航网站源码带后台版

    APP软件应用下载导航网站源码/APP分享下载页引流导航网站源码带后台版 ...伪静态规则设置为 thinkphp规则 后台登录地址 /Youni 后台登录账户 admin 后台登录密码 123123 详情:http://ban.maonius.cn

    WordPress导航主题源码 webstack pro V2.0406主题

    V2.0406 添加搜索自动索引百度热搜关键词 添加首页tab标签模式加载方式切换(ajax加载和普通加载)(首页设置) 修复tab标签ajax加载模式会显示未审核的网址的bug ...增加首页排序规则设置(首页设置)

    一款宅男导航源码整站打包分享源码

    然后服务器设置好伪静态规则 访问网站OK 后台是:你的域名/admin/login.php 账号:admin 密码:123456 Nginx伪静态规则 rewrite ^/index.html$ /index.php; rewrite ^/about.html$ /about.php; rewrite ^/search...

    自适应各终端懒人网址导航源码v2.4.zip

    自适应各终端懒人网址导航...然后服务器设置好伪静态规则 访问网站OK 后台是:你的域名/admin/login.php 账号:admin 密码:qqqqqq Nginx伪静态规则 rewrite ^/index.html$ /index.php; rewrite ^/about.html$ /abou

    自适应各终端懒人网址导航源码v3.9

    自适应各终端懒人网址导航源码是一个以PHP+MySQL进行开发的网址导航源码。 此版本是在原3.8版本的基础上修复和...然后在服务器设置好伪静态规则 访问网站OK 后台是:你的域名/admin/login.php 账号:admin 密码:qqqqqq

    自适应各终端懒人网址导航源码v2.2

    自适应各终端懒人网址导航源码v2.2 ...然后服务器设置好伪静态规则 访问网站OK 后台是:你的域名/admin/login.php 账号:admin 密码:qqqqqq 如有不懂不会问题的话请加QQ群:248078808 交流获取帮助

    优客365网址导航商业精华版网站源码 三款模板 四款插件.zip

    优客365网站分类导航系统是个跨平台的开源软件,基于PHP+MYSQL开发构建的开源网站分类目录管理系统,具有操作简单、功能强大、稳定性好、扩展性及安全性强、二次开发及后期维护方便,可以帮您迅速、轻松地构建起一个...

    自适应站长网址导航源码v1.6

    预览效果:...这套源码比较完美了,体积小,后台功能多,网站功能多,操作也简单 安装教程 ...1.先导入数据库文件db/db.sql ...3.然后服务器设置好伪静态规则(解压缩源码内附伪静态规则) 4.访问网站OK!

    WordPress导航主题源码添加搜索自动索引百度热搜关键词

    源码说明: 添加搜索自动索引百度热搜关键词 添加首页tab标签模式加载方式切换(ajax加载和普通加载)(首页设置) 修复tab标签ajax加载模式会显示未审核的网址的bug ...增加首页排序规则设置(首页设置)

    梦主网址收录导航源码下载 网站目录收录源码

    自适应梦主网址导航源码。 V2版本是在原1.9版本的基础上修复和增加了些功能。推荐直接使用新版本,舍弃旧版本,...然后服务器设置好伪静态规则 访问网站OK 后台是:你的域名/admin/login.php 账号:admin 密码:qqqqqq

    站长导航系统收录

    然后服务器设置好伪静态规则 访问网站OK 后台是:你的域名/admin/login.php 账号:admin 密码:qqqqqq Nginx伪静态规则 rewrite ^/index.html$ /index.php; rewrite ^/about.html$ /about.php; rewrite ^/search....

    自适应各终端懒人网址导航源码v3.4

    然后服务器设置好伪静态规则 访问网站OK 后台是:你的域名/admin/login.php 账号:admin 密码:qqqqqq Nginx伪静态规则 rewrite ^/index.html$ /index.php; rewrite ^/about.html$ /about.php; rewrite ^/search....

    一款基于ThinkPHP的WAP PC导航网站源码

    Thinkphp5.1精品网址导航源码 PC WAP,利于SEO 自定义功能非常强的网址导航系统,带资讯、友链、分类、系统设置等模块。 测试环境是:nginx mysql5.6 php7.1,需配置伪静态 伪静态规则: location / { if (!-e $...

Global site tag (gtag.js) - Google Analytics