zoukankan      html  css  js  c++  java
  • JavaWeb struts2 表单提交问题

    在配置的时候,注意:
    1. 文件放在action的同级目录中
    2. 文件命名action类名+方法名(struts2配置文件中的访问名)+validation  : 这个action都使用的话,中间的不写
     
    在今天工作的时候,遇到了问题:
    1. 再request()中获取数据(String name = request().getParameter("name");) 这样的值,在表单验证器中是无法正常的使用。
                 <field name="name"> 
                         <field-validator type="requiredstring"> 
                         <param name="trim">true</param> 
                         <message>必须输入用户名</message> 
                         </field-validator> 
                  </field>
     
           这个数据经过这个表单验证器的时候,会触发这个字段的验证。可是会一直空的,因为他根本就没有值。因为:
    struts2,action里的属性名字要跟页面的标签名字一样,这样才能通过set,get方法获取。而这是struts2中的表单验证,所有你只有再 action中 定义属性给上get() set().

    2,上面这个问题是一般比较大众的问题。而下面的这个问题久有点“奇葩”,因为很少有人这样写。而我就犯了这样的错,它的体现是:再验证上,和输入真确的情况下都是没有错误的。主要是它在“回显”时就会出现问题。在我时错误的情况下,我回到我的页面。而发现我的值都没有了,就是我那些初始化的值。
         我在网上找了很久,都没有我要的答案。而从开始分析: 现在比如我们要到一个修改用户信息页面去,
         1,我们要开始查询信息,放入作用域中,到页面时显示出来。
         2,我们进入页面后开始初始化(这种很不常用)
    那么我们的问题“回显”没有值的问题,大部分就出问题就在 : 1, 我查询了数据放入 A集合中,提交数据的时候使用B集合提交。呵呵,这是不是很难出现的错误。 因为struts2的机制就是到这个页面,并没有将请求的数据消除。而是再次提交的时候进行处理,这个时候我们的提交数据发生了错误。它就是将数据回到原来...你原来的数据就出来了,不过这种错误真的会很少见。
  • 相关阅读:
    哈希表
    矩阵加速(数列)
    线段树
    python
    vue 中防抖
    Windows版本与Internet Explorer版本对照
    一个怂女婿的成长笔记【二十三】
    一个怂女婿的成长笔记【二十一】
    vue xml数据格式化展示,展示在textarea里可编辑,和高亮处理方法
    substring 截取 第三个字符(/)后的字符串
  • 原文地址:https://www.cnblogs.com/ybbzbb/p/4972961.html
Copyright © 2011-2022 走看看