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 m = getParaMap();

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

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

Map m = new HashMap(getParaMap());

你可能感兴趣的:(java.lang.IllegalStateException: No modifications are allowed to a locked ParameterMap问题的解决)