项目中struts2碰到的相关错误
来源:互联网 发布:软件开发实习生 翻译 编辑:程序博客网 时间:2024/06/10 05:26
1:关于数据类型转换:我们知道,struts2是通过拦截器来实现数据的收集的,即,把表单的值注入到pojo的属性中,在注入之前,需对数据进行转换,但如果转换失败,则pojo对象不会生成,为null. 所以,在某些操作中,比如更新动作,就一般提示说找不到指定的action或没有指定input,这首先就想到路径问题,其实并不是!因为在action中引用pojo对象,但此对象为null,则action也就不会执行了,所以才提示404错误!
2 在定义POJO属性的数据类型时,有时我们比较随便,目前我都定义成基本类型,int,double,表面上没什么,但是与它们的包装类类型还是有所不同的,基本类型定义会默认初始化。在此项目中,与iBatis做持久层,作查询的时候,项目的查询参数在设计上是使用pojo对象,所以parameterClass=pojo对象,如果做查询时,属性的数据类型为基本类型,动态SQL写起来就麻烦了,比如我有一个int类型的查询条件,但在页面上客户并不输入其值查询,可是,sql_map里却会显示此值为0!所以为了达到目标,还需判断此值不能为0,而如果是Integer类型则直接isNotNull就OK了。同时,在有的业务中,比如单据状态,0代表编辑,这个时候,你就不能指定isNotEqual了,因为如果用户刚好查询编辑状态的单据呢!再者,我们iBatis的resultMap对应中,一般默认都是java.lang.Integer,基本类型都是其包装类型,所以对pojo的基本数据类型定义还是以包装类型的为好。
3 关于action no result的错误,场景是:如果请求的action有错误,它就会转到对应的input路径去,有时action里的错误比较难找,特别是变量多,代码复杂的情况下,有一个调试工具可以很直观的解决此问题,在指定input里(比如一个jsp)加入以下代码:
<s:fielderror/>
<s:debug />
<a href="javascript:void(0);" onclick="toggleDebug('debug');return false;">[调试信息]</a>
- 项目中struts2碰到的相关错误
- 项目中碰到的错误剖析
- 最近项目中碰到的
- 两个开发中碰到的sql错误
- Struts2项目中关于Struts标签的相关问题
- 正则表达式【项目中碰到使用的】
- xcode4.5导入项目时所碰到的错误
- xfire+spring+struts2+hibernate中碰到的问题
- 碰到的一些错误
- access 数据查询中碰到的日期相关的问题
- Hadoop中碰到的一些错误的解决方法
- delphi中我碰到的几个错误处理
- wince5.0中碰到的致命错误:0c000001c问题
- nginx配置过程中碰到的编译错误
- nginx配置过程中碰到的编译错误
- 学习Erlang过程中碰到的错误,记录一下
- 结构体中经常碰到的一个错误 undeclared identifier
- EMK 中moloch安装--抓取数据--碰到的错误
- GIS简介
- 关于Gridview自动生成列后,手动设定的模板列位置问题解决方案
- 字符串链表连接
- MSMQ :异步读取msg 通过完成端口(a Completion port)
- Page 执行中将按照如下顺序激活事件
- 项目中struts2碰到的相关错误
- Socket
- 重新系统后的飞信使用
- 屏幕颜色拾取器 (VC++)
- 80端口占用异常解决方法java.net.BindException: Address already in use: JVM_Bind:80(或8080)
- Cindy Message/MessageRecognizer interface
- cindy 重名函数
- struts2+Spring+iBatis整合与其它整合比较
- JAVA里的PING和TELNET