使用 Multipart/Form-Data Enctype 进行表单验证失败后,Struts 1 丢失请求参数

2024-04-10

我有一个简单的 Struts 表单。它有几个文本字段和一个文件字段。这enctype is multipart/form-data在我的表格上。我在中验证actionform的 验证方法。如果文本字段为空,我会返回错误 是必要的。除了可见字段之外,我还传递了一些隐藏字段 当表单被处理并返回到时需要作为请求参数 JSP。 JSP需要这些请求params.

当请求没有验证错误时,一切都很好params通过使用返回ActionRedirect行动中的班级。但如果 返回错误,我丢失了请求params。 (我能够访问 他们在actionform验证方法或在操作中)。

我怎样才能确定请求params已通过 返回验证错误multipart形式?有什么解决方法吗?

下面的动作映射(为了混淆而稍微编辑):

   <action
    path="/saveQuestion"
    type="blahblahblah.QuestionAction"
    parameter="save"
    name="QuestionForm"
    input="populateQuestion.do"
    scope="request"
    validate="true">
    <set-property property="cancellable" value="true"/>
    <forward name="success" path="viewSurvey.do" redirect="true"/>
  </action>
  <action
    path="populateQuestion"
    type="blahblahblah.QuestionAction"
    parameter="populateRequest"
    name="ItemForm"
    scope="request">
      <forward name="success" path=".editing.Question"/>
  </action>

我的 JSP 表单行:

<html:form styleId="QuestionForm" action="/saveQuestion" enctype="multipart/form-data" method="POST">

我相信您有两种选择来解决这个问题:

  • 将范围更改为会话:这样数据将存储在会话中,并且您不会丢失任何数据。
  • 实现验证的重置方法:这样,当在验证中调用重置方法时,您可以重新填充表单的数据。

我希望这会有所帮助。我的旧代码文件中可能有一些其他建议,但我现在无法访问它们。如果我有时间,我稍后会检查一下。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Multipart/Form-Data Enctype 进行表单验证失败后,Struts 1 丢失请求参数 的相关文章

  • Jackson JSON + Java 泛型

    我正在尝试将以下 JSON 反序列化 映射到List
  • 同一服务器上的许多应用程序具有相同的 JMX Mbean 类

    我有超过 5 个 Spring Web 应用程序 它们都在使用另一个通用库 这个公共库有它自己的 MBean 由于强制的唯一 objectName 约束 我的应用程序无法部署在同一服务器上 我使用 MBean 的方式是这样的 Managed
  • 连接外部 Accumulo 实例和 java

    我正在尝试使用 Accumulo 连接到虚拟机 问题是 我无法将其连接到 Java 中 我可以看到 Apache 抛出的网页 但我无法让它与代码一起工作 我认为这是缺乏知识的问题而不是真正的问题 但我找不到这方面的文档 所有示例都使用 lo
  • java程序有多少种结束方式?

    我知道使用 System exit 0 可以结束一个java程序 例如 如果我有一个JFrame窗口 它会关闭并结束程序 但我想知道还有多少其他方法 可以关闭它并结束程序 包括发生错误时 程序会被关闭 JFrame也会被关闭吗 添加到其他答
  • Kafka - 如何同时使用过滤器和过滤器?

    我有一个 Kafka 流 它从一个主题获取数据 并且需要将该信息过滤到两个不同的主题 KStream
  • 如何在 Android 应用程序中隐藏 Flutterwave API 密钥

    我正在构建一个 Android 应用程序 目前正在将 Flutterwave 集成到我的应用程序中以进行支付 建议我永远不要将 Flutterwave API 密钥放在我的应用程序上 那么我该如何隐藏这些键呢 我正在使用 Retrofit
  • 有人用过 ServiceLoader 和 Guice 一起使用吗?

    我一直想通过我们的应用程序 构建系统进行更大规模的尝试 但更高的优先级不断将其推到次要地位 这似乎是加载 Guice 模块的好方法 并且避免了关于 硬编码配置 的常见抱怨 单个配置属性很少会自行更改 但您几乎总是会有一组配置文件 通常用于不
  • 自定义列表字段点击事件

    我正在编写一个应用程序 其中我创建了用于显示列表视图的自定义列表字段 我的 CustomListField 包含连续的一个图像和文本 我正在通过单击列表字段行获取字段更改侦听器 但我也想将字段更改侦听器放在图像上 谁能告诉我我该怎么做 这是
  • 如何使用 Java Apache POI 隐藏 Excel 工作表中以下未使用的行?

    我正在使用数据库中的数据填充模板 Excel 工作表 for Map
  • getCurrentSession 在网络中休眠

    我正在使用 hibernate 和 jsp servlet 编写一个基于 Web 的应用程序 我读过有关sessionFactory getCurrentSession and sessionFactory openSession方法 我知
  • 将类转换为 JSONObject

    我有好几堂这样的课 我想将类转换为 JSONObject 格式 import java io Serializable import com google gson annotations SerializedName public cla
  • JAXB - 忽略元素

    有什么方法可以忽略 Jaxb 解析中的元素吗 我有一个很大的 XML 文件 如果我可以忽略其中一个大而复杂的元素 那么它的解析速度可能会快很多 如果它根本无法验证元素内容并解析文档的其余部分 即使该元素不正确 那就更好了 例如 这应该只生成
  • 如何更改 Swagger-ui URL 前缀?

    我正在使用 Springfox Swagger2 和 Spring boot 1 5 9 我可以通过此链接访问 swagger UI http localhost 8090 swagger ui html http localhost 80
  • 使用 JDBC 连接到 PostgreSql 的本地实例

    我在 Linux 机器上有一个正在运行的 PostgreSql 本地实例 当我使用psql来自 shell 的命令我成功登录 没有任何问题 我需要通过 JDBC 连接到 PostgreSql 但我不知道我到底应该传递什么url参数为Driv
  • 为什么解析这个 JSON 会抛出错误?

    我正在尝试解析这个 JSONObject query yahoo count 1 results rate Name USD INR id USDINR Time 12 19pm Date 10 31 2015 Bid 65 405 Ask
  • 如何自定义舍入形式

    我的问题可能看起来很简单 但仍然无法得到有效的东西 我需要自定义 Math round 舍入格式或其他格式以使其工作如下 如果数字是 1 6 他应该四舍五入到 1 如果大于或等于 1 7 他应该四舍五入到 2 0 对于所有其他带有 6 的小
  • titledBorder 标题中的图标

    您好 是否可以在 titledBorder 的标题中放置一个图标 例如以下代码 import java awt GridLayout import javax swing JFrame import javax swing JLabel i
  • Selenium 单击在 Internet Explorer 11 上不起作用

    我尝试在 Internet Explorer 上单击 selenium 但它不起作用 我努力了element click moveToElement element click build perform javascript没事了 事实上
  • 如何让 Firebase 与 Java 后端配合使用

    首先 如果这个问题过于抽象或不适合本网站 我想表示歉意 我真的不知道还能去哪里问 目前我已经在 iOS 和 Android 上开发了应用程序 他们将所有状态保存在 Firebase 中 因此所有内容都会立即保存到 Firebase 实时数据
  • 关闭扫描仪是否会影响性能

    我正在解决一个竞争问题 在问题中 我正在使用扫描仪获取用户输入 这是 2 个代码段 一个关闭扫描器 一个不关闭扫描器 关闭扫描仪 import java util Scanner public class JImSelection publ

随机推荐

  • Ruby 2.0 中正确的哈希语法是什么? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我应该使用
  • Inno Setup:如何观察变量值或写入调试输出?

    在 Inno Setup 中调试时如何观察变量的值 如何打印一些内容来调试输出 Thanks 目前没有调试监视窗口 但当调试器在断点处停止时 您只需将鼠标悬停在要检查的变量上即可 要将某些内容打印到调试输出 请使用Log http jrso
  • 让 jQuery 插件在动态添加的元素上工作

    好吧 我有这个插件 http timeago yarp com 它可以在现有元素上正常工作 但是 当我动态添加元素时 效果不会应用于该新元素 如何使插件在动态添加的元素上工作 该插件的语法是 abbr timeago timeago 这是添
  • Python 字符串和列表

    几天来一直在解决这个小问题 我不知道我是否全错了或者只是错过了一些东西 目标 从句子中的每个单词中 找到第一个元音 从单词中删除该元音后面的字母 并将剩余字母乘以 3 这个例子 如果我有一句话 Hello World 想要的输出应该是 He
  • 如何直接从 Android Wear 通过 WiFi 发出 HTTP 请求?

    如何在 Android Wear 上执行 HTTP 请求或打开套接字 我曾经认为这是不可能的但是应用程序说以下内容 如果您有配备 Android Wear 5 1 和 WiFi 的智能手表 即使您的手机处于关闭状态 也能正常工作 我测试了它
  • Java 应用程序可以使用 Aero Glass 效果吗?

    基于Swing的Java能否在Windows Vista 7下实现Aero Glass效果作为背景 从 Java SE 6 开始 Swing 的 Windows 原生外观使用 Aero Chet Haase 发表了一篇博客文章 其中包含有关
  • 线程“main”中出现异常 java.lang.SecurityException:禁止的包名称:java.lang

    我是 Java 新手 我有一个程序返回以下错误 我完全无法弄清楚 我用谷歌搜索了一切 你们能帮我吗 package java lang public class S1 public static void main String args
  • Rails 并发请求

    所以我有一个 Rails 应用程序可以解析一个长 json 文件 在此期间它向外部 API 发送请求 这似乎需要很长时间 我的问题是 是否像将每个请求放入单独的线程中以加快速度一样简单 我不明白为什么我不能同时运行 3 或 4 个线程来发送
  • jQuery 排序导致 iOS Safari 冻结

    我有一个页面使用 jQuery 加载 XML 文件 然后将其内容输出到页面 最近 我在输出中添加了排序功能 导致 iPod Touch 上的 Safari 挂起 1 分钟以上或 2 分钟以上 取决于我排序的字段数量 而在 iPad 上挂起不
  • 无法调试,致命信号 6 (SIGABRT) 位于 0x00007c37(代码=-6)

    我遇到了以下情况 无法调试 Android 应用程序 我可以运行它 但无法调试它 我开始了全新的项目 复制了所有内容并且它有效 意味着能够调试 但又得到了这个 我在模拟器和手机上都尝试过 但没有成功 我使用的是Android Studio
  • Angular 2 - ngShow 等效吗? [复制]

    这个问题在这里已经有答案了 根据我对文档的解释 如果我希望能够默认隐藏一个元素 并在单击链接时显示该元素 那么以下应该可以工作吗 在 app app component ts 中 newTrustFormVisible false 在 ap
  • 在哪里可以找到“Microsoft.VisualStudio.TestTools.UnitTesting”缺失的 dll?

    我的 C Visual Studio 项目中出现以下错误 命名空间 Microsoft 中不存在类型或命名空间名称 VisualStudio 是否缺少程序集引用 我还尝试查找 microsoft dll 文件 但找不到任何参考 我是否搜索了
  • 容器和包装的区别

    在编程语言 例如 Java 中 有什么区别container and wrapper 或者有什么区别 我听过这两个术语的使用都很模糊 在编程语言中这个词容器通常用于可以包含多个元素的结构 例如Map a Set or a List 这些结构
  • Python:使用正则表达式获取列表索引?

    在Python中 如何获取列表中项目的位置 使用list index 使用模糊匹配 例如 如何获取以下形式的所有水果的索引 berry在下面的列表中 fruit list raspberry apple strawberry Is it p
  • 如何处理文件名中的破折号

    在装有 Windows 7 的 PC 上 我使用一个简单的批处理脚本来重命名一些 Excel 文件 并在其父文件夹名称前面添加 for f delims i in dir b AD do cd i for f delims j in dir
  • 如何将控制台输出发送/拆分/复制到 R 中的变量中?

    如何将某些代码的输出放入变量中 我希望该输出仍然发送到控制台 我更喜欢sink符号 我不想使用capture output有两个原因 它要求相应的代码是单个函数 我不想通过创建函数来捕获输出来使我的代码复杂化 它不允许捕获的输出仍然进入控制
  • PHP - getimagesize() 重定向不起作用

    问题 getimagesize 对于某些 URL 不起作用 尤其是重定向的 URL 我用谷歌搜索并检查了 stackoverflow 但无济于事 这是我在本地计算机上看到的内容 var dump getimagesize http gan
  • VB6 应用程序调用 .NET DLL OutOfMemory 异常

    我们有一个调用 NET DLL 的 VB6 应用程序 有时 在 VB6 应用程序运行很长时间并多次调用 NET 代码后 NET 方面会抛出 OutOfMemory 异常 即使计算机上有足够的可用内存 VB6 的内存空间也远未达到极限 NET
  • lapply-ing 与“$”函数

    我正在经历一些例子 https github com hadley devtools wiki Functionals exercises 1在哈德利的泛函指南中 遇到了一个意想不到的问题 假设我有一个模型对象列表 x 1 3 y 3 1
  • 使用 Multipart/Form-Data Enctype 进行表单验证失败后,Struts 1 丢失请求参数

    我有一个简单的 Struts 表单 它有几个文本字段和一个文件字段 这enctype is multipart form data在我的表格上 我在中验证actionform的 验证方法 如果文本字段为空 我会返回错误 是必要的 除了可见字