zoukankan      html  css  js  c++  java
  • (异常分析)关于target is null for setProperty的问题总结!

    这个异常出在当表单提交的数据注入到action的bean类时无法注入报出这个错误!

    关于这种问题的几种可能性总结下:

    1.       对应的属性没有加get set  方法

    2.       提交表单中有更多的name属性而对应的action 或者model里面没有这个方法(这里重要就包括一个图片button  往往让人们难以发现)如下面表示:

    <input type="image" name="Submit" value="提交" onclick="return checkpwd();" src="images/a_tj.gif"/>

    错误信息: target is null for setProperty(null, "x", [Ljava.lang.String;@b0c40e)

    3.       在没有spring帮助注入的前况下我们action里面的model 一定要手动new 出来并且在model里面添加空的构造方法

    4.       Action里面的model 实例对象名字和我们表单中的名字不一致的时候

    5.       也是遇到的错误就是间我们的类名很长的时候比喻:

    pivate  ABdefghjijklijejfjdkeifj  aBefghjijklijejfjdkeifj  这时如果我们用myeclipse自动添加get set方法的时候就会发现它的getaB();  而我们实际上是要的getAB();这样的写法 所以注半天就是注不进去

    对于一些错误信息 把dev.Mode 开发模式 改成false 就会去掉这些错误信息

    注:本人在写代码的时候就是因为第4点,model类的类名是TestBean,在action中定义了 private TestBean testbean;也就是说model对象的名字是testbean,而我在表单中错把TestBean类名当做testbean对象名使用,导致注入异常,<input type="text" name="testbean.name" ></td>而不是<input type="text" name="TestBean.name" ></td>

  • 相关阅读:
    swoole多进程操作
    LinUX系统ThinkPHP5链接MsSQL数据库的pdo_dblib扩展
    php 访问用友u8数据
    C++/CLI剪辑
    托管代码中调用c++本地代码
    非托管代码中调用托管代码
    Resharper快捷键使用
    Unity3d简便的声音管理方案
    QT离线安装包
    Winform中使用Reactivex代替BeginInvoke/Invoke来更新UI数据
  • 原文地址:https://www.cnblogs.com/com-wushuang/p/4944804.html
Copyright © 2011-2022 走看看