| 1 package fr.improve.struts.taglib.layout.field; 2 3 import java.util.Collection ; 4 import java.util.ArrayList ; 5 6 import javax.servlet.jsp.JspException ; 7 8 import fr.improve.struts.taglib.layout.util.LayoutUtils; 9 13 public abstract class AbstractMultipleSelectTag extends AbstractSelectTag { 14 protected Collection matches; 15 private static final Collection EMPTY_COLLECTION = new ArrayList (); 16 20 protected Object getFieldValue() throws JspException { 21 Collection lc_value; 22 if (matches==null) { 23 lc_value = LayoutUtils.getCollection(LayoutUtils.getBeanFromPageContext(pageContext, name, property)); 24 if (lc_value==null) matches = EMPTY_COLLECTION; else matches = lc_value; 25 } else { 26 lc_value = matches; 27 } 28 if (lc_value==null || lc_value.isEmpty()) return null; 29 return lc_value; 30 } 31 protected void reset() { 32 super.reset(); 33 matches = null; 34 } 35 public void setMatches(Collection in_matches) { 36 matches = in_matches; 37 } 38 } 39 | Popular Tags |