我在开发的过程中遇到了这样一个异常,总是提示IllegalArgument异常,代码大致如下:

 1 if(haomgl.save(flush:true)){
 2
 3    //更新库存:状态为2的位置存煤
 4    def cunmInfoOfWeiz = null;
 5    def cunmInfoListOfWeiz = getCunmInfoListOfWeiz(haomgl.getMixunit().id, haomgl.getStoreposition(), haomgl.getCoaltype().id);
 6    if(cunmInfoListOfWeiz.size() > 0){
 7         cunmInfoOfWeiz = Jinmgl.get(Integer.parseInt(String.valueOf(cunmInfoListOfWeiz.get(0).id.intValue())));
 8
 9         .....10    } else { ... } 

代码在执行到7行时调用get方法时总是抛出这个IllegalArgument异常,查了好久以为是实体类Domain中存在字段为空,所以报这个错,后来发现,将4、5行代码改成下面的定义就可以了,

Jinmgl cunmInfoOfWeiz = null;
List cunmInfoListOfWeiz = getCunmInfoListOfWeiz(haomgl.getMixunit().id, haomgl.getStoreposition(), haomgl.getCoaltype().id);

把相应的对象不用def去定义,而是直接使用它的类型背身定义异常就不会出现了。

另一种原因就是你的数据有null的。

转载于:https://www.cnblogs.com/smallrock/p/3612179.html

grailsgroovy的IllegalArgument异常相关推荐

  1. [J2ME]url请求返回参数非法(java.lang.illegalArgument)

    如下的google地图路径查询请求在模拟器和PC浏览器中都能正常工作, http://ditu.google.com/staticmap?center=31.230574957142856,121.4 ...

  2. java单元测试测试异常_Java单元测试中出现意外异常

    我真的是JUnit的新手和一般的单元测试,我很难找到合适的方法.处理意外异常的更好方法是什么?为什么? 方法A: 首先捕获预期的,通过消息测试失败 在最后一个catch块中,捕获一般异常并使测试失败并 ...

  3. java.lang.IllegalArgument.Exception:Malformed

    java解压文件报java.lang.IllegalArgument.Exception:Malformed异常,报这个错误的原因是解压的文件名称中含有中文导致的,将中文改为英文就行了.

  4. Java | kotlin 手动注入bean,解决lateinit property loginService has not been initialized异常

    kotlin.UninitializedPropertyAccessException: lateinit property loginService has not been initialized ...

  5. JS Uncaught SyntaxError:Unexpected identifier异常报错原因及其解决方法

    最近在写ajax的时候,调用js方法,遇到了Uncaught SyntaxError:Unexpected identifier异常报错,开始搞不清原因,很苦恼. 以为是js方法参数个数和长度的问题, ...

  6. JVM 常见异常及内存诊断

    栈内存溢出 栈内存大小设置:-Xss size 默认除了window以外的所有操作系统默认情况大小为 1MB,window 的默认大小依赖于虚拟机内存. 栈帧过多导致栈内存溢出 下述示例代码,由于递归 ...

  7. java通过异常处理错误,java基础之通过错误处理异常

    我们在编程过程中,通常需要时刻关注可能遇到的问题,此时可以把问题分为两类:普通问题与异常问题.普通问题:我们可以通过从当前环境中获取到的信息来解决这个问题:而异常问题:在当前环境中获取到的信息并不能解 ...

  8. Ajax接收Java异常_java – 处理来自Servlet的Jquery AJAX响应中的异常

    我的servlet代码是 try{ //something response.setStatus(201); out.print("Data successfully saved" ...

  9. 消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法

    消除安卓SDK更新时的"https://dl-ssl.google.com refused"异常的方法 消除安卓SDK更新时的"https://dl-ssl.google ...

最新文章

  1. VS2010创建ATL类时需要手动填写ProgID
  2. pandas使用dropna函数删除dataframe中全是缺失值的数据列(drop columns with all missing values in dataframe)
  3. Hadoop教程(四):理解MapReduce、MapReduce计数器和连接、MapReduce Hadoop程序连接数据
  4. 算法学习总结(三):插入排序
  5. 4.线性和卷积——线性滤波器、非锐化掩蔽原理揭破_4
  6. [转载] Java中的abstract关键字
  7. python-下拉框处理
  8. MacOS如何设置多个桌面?
  9. mysql一张表能存多少条数据不影响性能_MySQL|优化案例两则
  10. echarts中环形图加边框
  11. ios开发者联系方式
  12. 小程序input自动聚焦拉起键盘
  13. Matlab颜色转换——基于RGB分量的彩色图像的颜色转换
  14. spark算子详细介绍(v、k-v、vv类型)
  15. 基于Python的PyGame实现的横板动作小游戏
  16. 误判心理学常见心理倾向
  17. jenkins 报错 code=exited, status=127
  18. 史上最全 | 华为敏捷管理经验全复盘
  19. 记录Windows 的一些基础知识(包括基础命令,文件系统,注册表项)
  20. 超级不可能的路Super Impossible Road Mac(竞速游戏)原生版

热门文章

  1. 【Linux】一步一步学Linux——ssh-add命令(182)
  2. php的工作流程是什么,工作流程 · PHP-ML中文文档 · 看云
  3. pandas 作图 统计_解决pandas 作图无法显示中文的问题
  4. android jni 调用java_Android JNI开发系列(九)JNI调用Java的静态方法实例方法
  5. python进程池调用实例方法_Python 多进程并发操作中进程池Pool的实例
  6. mybatis resultMap 的日期字段无法获取时分秒的两个问题
  7. mysql 1280_技术分享 | MySQL 一次奇怪的故障分析
  8. 在MFC单文档中,如何操作状态栏
  9. 什么是堆(Heap)
  10. UDP对应的应用层协议之DNS、DHCP