请教各位大侠一个struts 1.x的问题

问题描述

我在试图层中我写了这些代码<html:formaction="users.do"><html:hiddenproperty="op"value="doUpdate"/>${sysUserForm.item.usrName}:&nbsp;&nbsp;&nbsp;<html:selectproperty="item.role.roleId"><html:optionvalue="1">--未分配--</html:option><html:optionsCollectionname="list_role"label="roleName"value="roleId"/></html:select>&nbsp;&nbsp;&nbsp;<html:submit></html:submit></html:form>我在逻辑层中这样处理:publicActionForwarddoUpdate(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){SysUserFormuserForm=(SysUserForm)form;if(userForm.getItem().getRole().getRoleId()==1){userForm.getItem().setRole(null);}usersBiz.updateUser(userForm.getItem());returnmapping.findForward("userInfo");}但是:出现这样一个错误:org.apache.commons.beanutils.NestedNullException:Nullpropertyvaluefor'role'这是为什么???可能原因是:这个userForm.getItem().setRole(null);被我赋值为空了。我是通过hibernate把数据进行了一个懒惰加载“lazy='false'”.我这样去解决过:userForm.getItem().setRole(newSysRole());也不行,为什么??但是怎么解决呢???急求....谢谢了

解决方案

解决方案二:
if(null!=userForm.getItem().getRole()&&userForm.getItem().getRole().getRoleId()==1){userForm.getItem().setRole(null);}
解决方案三:
引用1楼luman2002的回复:

if(null!=userForm.getItem().getRole()&amp;&amp;userForm.getItem().getRole().getRoleId()==1){userForm.getItem().setRole(null);}

我出错的原因是:当我在该对象为空的时候,页面上的标签会报错。说<html:selectproperty="item.role.roleId">这个里面的role找不到。解决一下。谢谢....
解决方案四:
<html:optionsCollectionname="list_role"label="roleName"value="roleId"/>不应该直接写成value="roleId"吧
解决方案五:
引用3楼lovemichael2的回复:

<html:optionsCollectionname="list_role"label="roleName"value="roleId"/>不应该直接写成value="roleId"吧

呵呵,这样写,绝对是对的!问题的根本不是这个?
解决方案六:
问题是在你的userForm里没有取到值啊!断点跟进去getRole那边看看
解决方案七:
该回复于2011-04-19 15:05:16被版主删除
解决方案八:
<html:selectproperty="item.role.roleId">你这里的item应该是空的。

时间: 2024-07-31 17:13:22

请教各位大侠一个struts 1.x的问题的相关文章

请教各位大侠一个关于向webbrowser发送鼠标单击消息的问题

问题描述 各位大虾,下面是我的C#代码,我想向webBrowser的某一个位置发送一个鼠标单击消息,但是我用了所有的办法,用SPY++检测都没法看到鼠标点击消息怎样才能像webbrowser的指定位置发鼠标单击消息,各位大虾能否给些指教,十分感谢.constintWM_LBUTTONDOWN=0x0201;//定义了鼠标的左键点击消息constintWM_LBUTTONUP=0x0202;//定义了鼠标的左键点击消息constintWM_CLICK=0x00F5;constintWM_SETFO

请教各位大侠一个查询语句的问题~ 谢谢

问题描述 select*fromuseridnamepass1张三1112李四2223王五3333以上查询语句查询出的结果,如何在查询出的结果中删除pass列,请问大家这样的语句该怎么写啊就是select*fromuser这句语句查询出来的结果没有pass列,一条语句实现,谢谢 解决方案 解决方案二:selectnamefromuser解决方案三:selectid,namefromuser解决方案四:引用1楼的回复: selectnamefromuser 谢谢这样写对于这样简单的语句可以实现,但

调试-在测试一个tesseract程序时logcat抛出一个错误无法解决,请教各位大侠

问题描述 在测试一个tesseract程序时logcat抛出一个错误无法解决,请教各位大侠 这是logcat的信息 02-09 12:45:12.405: D/MainActivity ...(2210): begin>>>>>>> 02-09 12:45:12.409: D/nimei(2210): ---in ocr() before try-- 02-09 12:45:12.409: V/MainActivity ...(2210): not in the

c++-想用C# 来写C++ 的IDE 请教各位大侠

问题描述 想用C# 来写C++ 的IDE 请教各位大侠 如题 我想在C#项目里嵌入 C++ 开发环境 但是毫无思路 请各位大侠给个思路 本猿感激不尽 解决方案 C++代码写成DLL,把需要的函数导出 调用DLL 下面以visual2008为例子,简单精炼,有什么问题问我,已经亲测http://www.cppblog.com/acmercyj/articles/145931.html 最后,求分 解决方案二: 具体的实现你可以参考visual studio sdk的例子,或者你可以获得一个完整的基

html-本人菜鸟一枚,请教大神一个关于CSS中ID和类选择器不能用,而标签选择器能用的问题

问题描述 本人菜鸟一枚,请教大神一个关于CSS中ID和类选择器不能用,而标签选择器能用的问题 FIREFOX浏览器,代码如下: HTML代码片段: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> @import url(template/default/styl

一个struts后台应用场景处理的问题?

问题描述 一个struts后台应用场景处理的问题? 前端有个超链接,如果连续多次点击比如双击时会发起多次action请求,而后台的action要求只接受第一次的处理,其他都要忽略,当然这个用前端控制点击也是可以的,但是我想在后台控制应用请求的处理发现很难实现.action中会在第一次请求的时候返回success,而其后的请求都返回error,但是error的返回struts的配置文件怎么写?因为我只希望返回成功请求的那个跳转页面,其他请求最好什么都不处理,但是似乎请求都必须要有返回,就算配置文件

Struts1.x系列教程(1):用MyEclipse开发第一个Struts程序

本系列教程将详细介绍Struts 1.x的基本原理和使用方法,读者可以参阅<Struts 2系列教程>来比较Struts 1.x和Struts 2.x的相同点和不同点. 一.本文给出的程序要实现什么功能 mystruts是一个录入和查询产品信息的程序.为了方便起见,本例中的产品信息表只包括了产品ID.产品名称和产品价格三个字段.mystruts的主要功能如下: 1.接受用户输入的产品ID.产品名称和产品价格. 2.验证这些字段的合法性.如果某些字段的输入不合法(如未输入产品ID),程序会for

在线等-求一个Struts和mybatis2个框架组成的一个小型的添加代码

问题描述 求一个Struts和mybatis2个框架组成的一个小型的添加代码 求一个Struts和mybatis2个框架组成的一个小型的添加代码 解决方案 http://blog.csdn.net/lwwgtm/article/details/9395841

请教大神一个问题,jboss集成netty 有人知道咋弄吗

问题描述 请教大神一个问题,jboss集成netty 有人知道咋弄吗 我想把netty集成到jboss容器里,有人知道怎么弄嘛?谢谢各位了 解决方案 难道没有大神?? 很捉急啊?拜托拜托啊 解决方案二: Netty是由JBOSS提供的一个java开源框架,你直接在eclipse里开发使用就行了,应用服务器可以使用Jboss或者其它的 不需要把netty直接集成到jboss容器里 解决方案三: 关于netty学习的例子,可以参考以下链接 http://mushiqianmeng.blog.51ct