今天就跟大家聊聊有关在JSF中的页面导航问题是怎么样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
我的目的是想把平时做项目遇到的一些小问题,以及解决方法告诉大家,希望各位同仁不要重蹈覆辙。如有问题,请通过邮件的方式与我联系,一同交流,共勉之!
下面就进入主题吧!来说一下我今天解决的一个问题。使用过JSF的人都知道,在JSF(指采用JSF框架的项目)中,页面之间的跳转是通过faces- config.xml文件来页面导航的。当然,你也可以用其他方式做页面跳转,但JSF不建议这样做。在做页面导航的时候,有一个“重定向”的选项,即" redirect "。代码如下:
<navigation-rule>
<from-view-id>/archives/admin/archivesAudit.jsp</from-view-id>
<navigation-case>
<from-outcome>auditFinish</from-outcome>
<to-view-id>/archives/admin/archivesBrowse.jsp</to-view-id>
<redirect />
</navigation-case>
</navigation-rule>
如果不选择此项,从当前页面跳转到另一个页面后,地址栏保留的是请求的 URL,server只是做了一个转发的动作;如果选择“重定向”,则地址栏里保留的是被请求的URL,server会重新发送一个被请求的URL。当然,不管是否做“重定向”的选择,渲染出来的页面都是正常的。但是,如果你是从添加, 修改, 删除等页面跳转到列表页的话。如不加“重定向”做导航,当成功提交后,再次刷新列表页的时候,就会再次执行上一次提交的动作。这样的结果就是,会不停的做上一次的添加, 修改或删除动作,且都是相同的数据。因为列表页保留的地址还是上次提交的URL,这就是为什么会执行上一个提交的动作的原因。解决方案是在做页面导航时加 “重定向”选项!
看完上述内容,你们对在JSF中的页面导航问题是怎么样的有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。