在后台处理ViewExpiredException并恢复表单值

2024-01-13

是否有一个无数据库、primefaces 和“keep-session-alive”的解决方案来防止或在恢复表单输入时在后台静默处理 ViewExpiredException?

例如,具有“保持登录 cookie”的用户不希望被重定向到某种错误页面或起始页面;他填写了一些表单值,一小时后回来,然后,当他提交表单时,将使用之前的输入重新创建相同的视图,并再次重新执行底层 requestscope-bean 的提交操作。

我已经注意到了 omnifaces 和 mojarras

  <o:enableRestorableView />
  <f:view transient="true"> 

但当我们谈论永久登录用户时,我不确定这是否是正确的方法。

感谢您指出正确的方向。


使用之前的输入重新创建相同的视图,并再次重新执行底层 requestscope-bean 的提交操作

正是为了满足此要求,透明地重新创建和恢复与绑定的过期 JSF 表单request作用域 bean,无状态 JSF,如<f:view transient="true">是正确的解决方案。

The <o:enableRestorableView> http://showcase.omnifaces.org/taghandlers/enableRestorableView在这种特定情况下是不必要的。它仅适用于透明地重新创建和恢复与绑定的过期 JSF 表单。view作用域 bean。您只需要根据请求参数手动填充视图作用域 bean 属性即可。@PostConstruct.

换句话说,您不需要混合这些解决方案。从技术上讲,它确实没有意义,因为视图作用域 bean 在无状态 JSF 中无论如何都是无用的,它们的行为就像请求作用域 bean 一样。

也可以看看:

  • JSF 中的无状态有什么用处? https://stackoverflow.com/questions/14890995/what-is-the-usefulness-of-statelessness-in-jsf
  • 会话过期后恢复@ViewScoped bean中的请求参数 https://stackoverflow.com/questions/24394142/restoring-request-parameters-after-session-expires/
  • javax.faces.application.ViewExpiredException:视图无法恢复 https://stackoverflow.com/questions/3642919/javax-faces-application-viewexpiredexception-view-could-not-be-restored
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在后台处理ViewExpiredException并恢复表单值 的相关文章

  • JSF 2 全局异常处理,导航到错误页面未发生

    我正在开发一个基于 JSF 2 0 的 Web 应用程序 我正在尝试实现一个全局异常处理程序 每当发生任何异常 例如 NullPointerException ServletException ViewExpiredException 等
  • Primefaces 中的过滤数据表仅有效一次

    我正在尝试使用 Primefaces 过滤数据表 就像这个例子 http www primefaces org showcase ui datatableFiltering jsf 在网络浏览器中 我输入要过滤的文本 它会工作一次 但是当我
  • Glassfish 3.1.1 上的 OpenJPA 2.1.1 增强问题

    我的问题是这个异常 Caused by
  • 如何使用p:ajax按顺序更新多个组件

    我正在尝试呈现以下 JSF 页面
  • 流范围导航到起始页不起作用

    这与其说是一个问题 不如说是一个注释 对于 Glassfish4 在 JEE7 应用程序中 我尝试使用编程流定义 用 Produces FlowDefinition 注释的 java 类 来使用流范围 我使用 h commandButton
  • JSF 托管 Bean 命名约定

    这些天我曾经使用 JSF 但有一个 约定 我不确定是否应该使用 在使用托管 bean 时 人们通常将其命名为XxxxxManagedBean其中前缀可以是与您的业务相关的任何名称 你也这样工作过吗 特别是 尽管搜索很容易 但我不太喜欢 您正
  • p:remoteCommand 无法在异步模式下工作

    如果有人可以在这里给我帮助 我将不胜感激 我在页面上有一个选项卡式布局 通过单击选项卡 p commandLink 我想初始化该选项卡的适当数据并更新显示内容的区域 由于我希望初始化能够延迟发生 当呈现选项卡内容时 因此我使用 Primef
  • 无法找到与 from-view-id '/pages/index.xhtml' 匹配的导航案例

    我在 JSF 页面之间导航时遇到问题 我的大部分导航都是在您单击命令按钮时发生的 命令按钮的操作返回一个字符串 我的登录页面是我的欢迎页面 它位于我的 web xml 中
  • 如何减少 JSF 中的 javax.faces.ViewState

    减少 JSF 中视图状态隐藏字段大小的最佳方法是什么 我注意到我的视图状态约为 40k 这会在每次请求和响应时下降到客户端并返回到服务器 特别是到达服务器时 这对用户来说会显着减慢 我的环境 JSF 1 2 MyFaces Tomcat T
  • 使用 CDI+JSF 使会话失效不起作用

    我正在尝试在我的应用程序中实现注销 所以我这样做了 public String logout try FacesContext facesContext FacesContext getCurrentInstance ExternalCon
  • 同时调用多个支持 bean 方法

    有没有办法从 JSF 中的不同支持 bean 调用多个方法 我有一个存储用户信息的应用程序 我有多个支持 bean 它们分为时间表 地址 电话等 当应用程序最初加载时 一切正常 但由于我的所有视图都是类型 ViewScope即使显示新用户
  • javax.faces.FacesException 无法找到 CDI BeanManager [重复]

    这个问题在这里已经有答案了 我在用 目标运行时间 野蝇14 0 动态网页模块版本 4 0 配置 动态网络模块4 0 爪哇1 8 JavaServer Faces 2 3 JSF 能力 JSF 配置文件 WEB INF faces confi
  • JSF-2 应用程序中的服务器端计时器

    在我正在开发的 JSF 2 应用程序中 当用户执行操作时 我需要启动服务器端计时器 这个计时器必须与应用程序本身相关 因此它必须在用户会话关闭时继续存在 为了解决这个问题 我想使用 java util Timer 类在应用程序范围的 bea
  • Ajax 如何在 JSF 上工作?

    我是 JSF 新手 但我对 ASP NET 及其 Ajax 功能有一些经验 我知道 JSF 有一些 Ajax 标签可以使用 Ajax 完成一些任务 但我想知道它是如何使用 Ajax 的 它使用 ASP NET 中的 ScriptManage
  • jsf 2.0 中看不见的注释? [复制]

    这个问题在这里已经有答案了 是否可以在我的 xhtml 文件中嵌入注释 这些注释仅显示在源代码中 而不显示在渲染结果中 我想在文件中包含作者 日期 但最终用户在生成的输出中不应该看到它们 如果我使用标准评论标签浏览器显示它们 将以下内容添加
  • 如何定位整个 JSF 页面被 p:blockUI / pe:blockUI 阻止?

    该示例演示了阻塞
  • javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL 自 Java EE 7 / EL 3.0 起不再工作

  • 如何让div与包含td的高度相匹配?

    我沿着桌子的一排布置了三个 面板 一个比另外两个高 我希望所有三个面板都与最高的一个的高度相匹配 我尝试将 div 的样式设置为 height 100 但是即使包含的 tds 增长 短面板仍然很短 我的 HTML 是由 JSF 生成的 因此
  • Java EE 目录结构

    我对以下教程有疑问 http www mkyong com jsf2 jsf 2 internationalization example http www mkyong com jsf2 jsf 2 internationalizatio
  • 如何在 JSF 中实现登录过滤器?

    即使用户知道某些页面的网址 我也想阻止某些页面的访问 例如 localhost 8080 user home xhtml 需要先登录 如果没有登录则重定向到 index xhtml 在 JSF 中如何做到这一点 我在谷歌上看到需要一个过滤器

随机推荐

  • JavaScript:Alert.Show(message) 来自 ASP.NET 代码隐藏

    我正在读这个JavaScript Alert Show message 来自 ASP NET 代码隐藏 http archive devnewz com devnewz 3 20061129JavaScriptAlertShowmessag
  • 如何在 Blade 标签模板中使用本地化?

    第一个问题 我已经在许多类型的文本和事物中插入了本地化 但我不知道如何将其导入以下形式 Form label name here Form text name null array placeholder gt here Form subm
  • 您可以将存档文件直接添加到 XCode Organizer 吗?

    我有一个朋友为我制作了一个存档 我现在想将其提交到 itunesconnect 有什么方法可以将此存档添加到 XCode 的管理器中 还是我必须使用工作区文件来烘焙自己的存档 谢谢你 双击存档会将其添加到管理器中 我尝试拖入管理器 但它不适
  • 带有 xapian 引擎的 Django-haystack:如果模型具有 ManyToManyField,则无法执行 update_index

    将 django 升级到 1 7 后 我无法执行管理命令 update index Traceback most recent call last File opt pycharm 3 4 1 helpers pydev pydevd py
  • 批量命令冲突

    我制作了这个批处理脚本 它允许用户输入网站的 URL 以及以分钟为单位的时间 然后将 URL 添加到主机文件中 并在时间到期后将其删除 在一定时间内有效屏蔽某个网站 它在首次运行时通过创建另一个批处理文件从hosts文件中删除网站 然后使用
  • yml docker-compose 错误映射值在这里不允许

    我尝试了解容器 但我的 docker compose yml 文件有问题 在运行 docker compose up 后 我总是遇到相同的错误 错误 yaml scanner ScannerError 不允许映射值 这里 即使我更改了 do
  • 水平连接字符串元胞数组

    我希望水平连接字符串元胞数组的行 如下所示 start hello world test join me please finish helloworldtest joinmeplease 是否有任何内置函数可以完成上述转换 有一种简单的非
  • Spring Boot:部署到外部服务器时如何设置异步超时

    在使用嵌入式 tomcat 部署我的 spring boot 应用程序时 我设置异步超时如下 Bean public EmbeddedServletContainerFactory servletContainer TomcatEmbedd
  • Ruby 中非对象的“事物”示例

    一切都是对象 是我学到的关于 Ruby 的第一件事之一 但在 Peter Cooper 的书中Ruby 入门 从新手到专业人士 其中提到 almostRuby 中的一切都是对象 你能给我一些吗示例things那些不是 Ruby 中的对象 我
  • Gulp + babelify + browserify 问题

    我正在尝试使用 browserify 和 babelify 创建一个 gulp 任务 这是任务 var gulp require gulp var browserify require gulp browserify var source
  • 根据列值连接不同的表

    我有一个表R 其中包含表P的外键 在表P中有一列 告诉我表P中的记录是什么类型 与 P type 列中的可能值相关 根据表存在 因此 如果 P type 中的值为 C 则表示名为 C 的表 如果值为 D 则表示名为 D 的表 现在我想要一个
  • 文件的 listFiles() 不适用于符号链接?

    我有以下文件对象通过符号链接指向目录 File directory new File path symlink foo bar String files directory listFiles listFiles 返回 null 这是因为符
  • 如何循环加载所有用户的注册表配置单元

    使用管理员权限 我需要枚举 Windows 7 系统上的所有用户 甚至是已注销的用户 然后我需要为每个用户加载注册表配置单元并设置一个密钥 NetUserEnum 给我 SID 我猜 LsaEnumerateLogonSessions 也会
  • 在 Windows 上我应该将 Eclipse 安装到哪个文件夹?

    我运行的是 Windows 7启用UAC 我一直觉得很奇怪Eclipse http www eclipse org 不使用安装程序 也不使用 AppData 文件夹在 Windows 中存储其数据 但最近我不得不重新安装几次 硬盘驱动器问题
  • Python tkinter 文本修改回调

    在 python 2 7 中 每次 Tkinter Text 小部件中发生更改时 我都尝试获取回调 该程序使用基于此处找到的代码的多个框架 在 tkinter 中的两个框架之间切换 https stackoverflow com quest
  • wpf:获取组合框值

    我有一个名为 cbFileSize 的 WPF 组合框 我尝试获取所选值 如下所示 string tmp cbFileSize SelectedValue ToString MessageBox Show tmp 但 tmp 设置为 Sys
  • 无法加载数据源的类:com.databricks.spark.csv

    My build sbt文件有这个 scalaVersion 2 10 3 libraryDependencies com databricks spark csv 2 10 1 1 0 我正在独立集群模式下运行 Spark 我的 Spar
  • 有条件地应用 Angular 4 中的点击事件

    是否可以在模板中定义一个附加点击处理程序的条件 例如 我能得到的最接近的是评估单击方法入口处的条件 a class user a 如果标志有的话 有没有一种方法可以避免完全绑定到单击事件isOverflown是假的吗 另外 我不想使用ng
  • 使用 Maven 打包并运行 Scala Spark 项目

    我正在 Scala 中编写一个应用程序 它使用Spark http spark apache org 我正在使用 Maven 打包应用程序 并在构建应用程序时遇到问题 uber 或 fat 罐子 https stackoverflow co
  • 在后台处理ViewExpiredException并恢复表单值

    是否有一个无数据库 primefaces 和 keep session alive 的解决方案来防止或在恢复表单输入时在后台静默处理 ViewExpiredException 例如 具有 保持登录 cookie 的用户不希望被重定向到某种错