validation - How to remove specific FacesMessage from FacesContext? -


how can delete specific facesmessage facescontext. lets have list contains 2 facesmessages detail(getdetail()) mandatory fields , invalid account number , want delete mandatory fields facesmessage.

below sample code :

listiterator<?> cmessages = context.getmessagelist().listiterator(); cmessages.hasprevious(); while (cmessages.hasnext() && cmessages!=null) {      facesmessage msg =(facesmessage) ((cmessages.next() instanceof facesmessage)?cmessages.next():null);     if(msg!=null){         if(msg.getdetail().equals(messagedetail)){               cmessages.next();               cmessages.remove();         }      } } 

as above code giving me unsupportedoperation exception

below code snippet wrote fixed issue

public static void clearmessageswithid(string messageid) {   string messagedetail = geterrormessage(messageid);   facescontext context = facescontext.getcurrentinstance();   (iterator<facesmessage> iterator = context.getmessages(); iterator.hasnext();) {     facesmessage msg = iterator.next();     if (msg.getdetail().contains(messagedetail)) {       // remove current element iterator , list.       iterator.remove();     }   } } 

and unsupportedoperation reported because trying access element unexistent element in list


Comments

Popular posts from this blog

searchKeyword not working in AngularJS filter -

sequelize.js - Sequelize: sort by enum cases -

user interface - how to replace an ongoing process of image capture from another process call over the same ImageLabel in python's GUI TKinter -