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的机制就是到这个页面,并没有将请求的数据消除。而是再次提交的时候进行处理,这个时候我们的提交数据发生了错误。它就是将数据回到原来...你原来的数据就出来了,不过这种错误真的会很少见。
  • 相关阅读:
    2.12 使用@DataProvider
    2.11 webdriver中使用 FileUtils ()
    Xcode8 添加PCH文件
    The app icon set "AppIcon" has an unassigned child告警
    Launch Image
    iOS App图标和启动画面尺寸
    iPhone屏幕尺寸、分辨率及适配
    Xcode下载失败 使用已购项目页面再试一次
    could not find developer disk image
    NSDate与 NSString 、long long类型的相互转化
  • 原文地址:https://www.cnblogs.com/ybbzbb/p/4972961.html
Copyright © 2011-2022 走看看