java.lang.IllegalStateException: No modifications are allowed to a locked ParameterMap问题的解决


    对request.getParameterMap()获取的参数进行修改时,发现报异常显示为java.lang.IllegalStateException: No modifications are allowed to a locked ParameterMap经查询,发现java的原生对象是不允许修改的,如下代码:

Map<String,String[]> m = getParaMap();

是不能对m进行直接修改,因为用等号赋值只是地址引用,并没有改变内存空间,因此无法对之前产生的那个被锁定的对象进行操作。

       解决方法:用new重新创建一个新的对象,重新申请一个内存空间,然后把锁定的对象重新复制到新的空间中,将不可变变为可变。代码如下:

Map<String,String[]> m = new HashMap<String,String[]>(getParaMap());


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM