首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java BeanMap迭代器在iterator.remove()上抛出UnsupportedOperationException

Java BeanMap迭代器在iterator.remove()上抛出UnsupportedOperationException
EN

Stack Overflow用户
提问于 2019-09-11 16:57:21
回答 1查看 96关注 0票数 0

我在调试一个使用迭代器遍历beanmap映射中的条目的应用程序时遇到了一个问题。当我在迭代器上使用remove()函数时,应用程序崩溃,并且我找不出原因。它曾经运行得很好。

该应用程序已经运行了一年多,没有任何问题。也许从来没有真正调用过.remove()函数,因为它在if子句中,但我仍然认为它应该可以很好地工作。

代码如下:

代码语言:javascript
复制
BeanMap bm = new BeanMap(pKzlGd);
        Iterator entries = bm.entrySet().iterator();
        while (entries.hasNext()) {
            Map.Entry<Object, Object> entry = (Map.Entry<Object, Object>) entries.next();
            if (entry.getValue() instanceof Class) {
                entries.remove();
            }
        }

这基本上就是我得到的StackTrace错误:

代码语言:javascript
复制
Stack trace: javax.faces.FacesException: #{aopUpload.upload}: java.lang.UnsupportedOperationException: remove() is not supported
         at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
         at si.nkbm.bilbon.net.ExceptionActionListener.processAction(ExceptionActionListener.java:24)
         at javax.faces.component.UICommand.broadcast(UICommand.java:387)
         at org.ajax4jsf.component.UIInclude.broadcast(UIInclude.java:170)
         at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:329)
         at org.ajax4jsf.component.AjaxViewRoot.broadcastEventsForPhase(AjaxViewRoot.java:304)
         at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:261)
         at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:474)
         at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
         at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
EN

回答 1

Stack Overflow用户

发布于 2019-09-11 17:12:09

据我所知,您使用的是BeanMapMap提供的迭代器似乎不支持删除条目。我想您以前从未传递过if语句。这是意料之中的行为。Documentation提到,它实际上不允许删除条目。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57885556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档