List of usage examples for org.apache.commons.validator Field getDependencyList
public List<String> getDependencyList()
List
of the dependencies in the same order they were defined in parameter passed to the setDepends() method. From source file:net.jawr.web.resource.bundle.generator.validator.CommonsValidatorGenerator.java
@SuppressWarnings("unchecked") private List<ValidatorAction> createActionList(ValidatorResources resources, Form form) { List<String> actionMethods = new ArrayList<String>(); Iterator<Field> itFields = form.getFields().iterator(); while (itFields.hasNext()) { Field field = itFields.next(); for (Iterator<String> x = field.getDependencyList().iterator(); x.hasNext();) { String o = x.next();/*w w w .j av a2s . co m*/ if ((o != null) && !actionMethods.contains(o)) { actionMethods.add(o); } } } List<ValidatorAction> actions = new ArrayList<ValidatorAction>(); // Create list of ValidatorActions based on actionMethods Iterator<String> iterator = actionMethods.iterator(); while (iterator.hasNext()) { String depends = iterator.next(); ValidatorAction va = resources.getValidatorAction(depends); // throw nicer NPE for easier debugging if (va == null) { throw new NullPointerException( "Depends string \"" + depends + "\" was not found in validator-rules.xml."); } if ((va.getJavascript() != null) && (va.getJavascript().length() > 0)) { actions.add(va); } else { iterator.remove(); } } Collections.sort(actions, ACTION_COMPARATOR); return actions; }
From source file:org.apache.struts.taglib.html.JavascriptValidatorTag.java
/** * Get List of actions for the given Form. * * @param resources//from w ww.ja v a 2s .c o m * @param form * @return A sorted List of ValidatorAction objects. */ private List createActionList(ValidatorResources resources, Form form) { List actionMethods = new ArrayList(); Iterator iterator = form.getFields().iterator(); while (iterator.hasNext()) { Field field = (Field) iterator.next(); for (Iterator x = field.getDependencyList().iterator(); x.hasNext();) { Object o = x.next(); if ((o != null) && !actionMethods.contains(o)) { actionMethods.add(o); } } } List actions = new ArrayList(); // Create list of ValidatorActions based on actionMethods iterator = actionMethods.iterator(); while (iterator.hasNext()) { String depends = (String) iterator.next(); ValidatorAction va = resources.getValidatorAction(depends); // throw nicer NPE for easier debugging if (va == null) { throw new NullPointerException( "Depends string \"" + depends + "\" was not found in validator-rules.xml."); } if ((va.getJavascript() != null) && (va.getJavascript().length() > 0)) { actions.add(va); } else { iterator.remove(); } } Collections.sort(actions, actionComparator); return actions; }
From source file:org.apache.velocity.tools.struts.ValidatorTool.java
/** * Get List of actions for the given Form. * * @param resources the validator resources * @param form the form for which the actions are requested * @return A sorted List of ValidatorAction objects. *//* ww w. j ava 2 s .c om*/ protected List createActionList(ValidatorResources resources, Form form) { List actionMethods = new ArrayList(); // Get List of actions for this Form for (Iterator i = form.getFields().iterator(); i.hasNext();) { Field field = (Field) i.next(); for (Iterator x = field.getDependencyList().iterator(); x.hasNext();) { Object o = x.next(); if (o != null && !actionMethods.contains(o)) { actionMethods.add(o); } } } List actions = new ArrayList(); // Create list of ValidatorActions based on actionMethods for (Iterator i = actionMethods.iterator(); i.hasNext();) { String depends = (String) i.next(); ValidatorAction va = resources.getValidatorAction(depends); // throw nicer NPE for easier debugging if (va == null) { throw new NullPointerException( "Depends string \"" + depends + "\" was not found in validator-rules.xml."); } String javascript = va.getJavascript(); if (javascript != null && javascript.length() > 0) { actions.add(va); } else { i.remove(); } } Collections.sort(actions, actionComparator); return actions; }
From source file:org.springmodules.validation.commons.taglib.JavascriptValidatorTag.java
/** * Render the JavaScript for to perform validations based on the form name. * * @throws javax.servlet.jsp.JspException if a JSP exception has occurred */// ww w. ja v a 2 s. c om public int doStartTag() throws JspException { StringBuffer results = new StringBuffer(); Locale locale = RequestContextUtils.getLocale((HttpServletRequest) pageContext.getRequest()); ValidatorResources resources = getValidatorResources(); Form form = resources.getForm(locale, formName); if (form != null) { if ("true".equalsIgnoreCase(dynamicJavascript)) { MessageSource messages = getMessageSource(); List lActions = new ArrayList(); List lActionMethods = new ArrayList(); // Get List of actions for this Form for (Iterator i = form.getFields().iterator(); i.hasNext();) { Field field = (Field) i.next(); for (Iterator x = field.getDependencyList().iterator(); x.hasNext();) { Object o = x.next(); if (o != null && !lActionMethods.contains(o)) { lActionMethods.add(o); } } } // Create list of ValidatorActions based on lActionMethods for (Iterator i = lActionMethods.iterator(); i.hasNext();) { String depends = (String) i.next(); ValidatorAction va = resources.getValidatorAction(depends); // throw nicer NPE for easier debugging if (va == null) { throw new NullPointerException( "Depends string \"" + depends + "\" was not found in validator-rules.xml."); } String javascript = va.getJavascript(); if (javascript != null && javascript.length() > 0) { lActions.add(va); } else { i.remove(); } } Collections.sort(lActions, new Comparator() { public int compare(Object o1, Object o2) { ValidatorAction va1 = (ValidatorAction) o1; ValidatorAction va2 = (ValidatorAction) o2; if ((va1.getDepends() == null || va1.getDepends().length() == 0) && (va2.getDepends() == null || va2.getDepends().length() == 0)) { return 0; } else if ((va1.getDepends() != null && va1.getDepends().length() > 0) && (va2.getDepends() == null || va2.getDepends().length() == 0)) { return 1; } else if ((va1.getDepends() == null || va1.getDepends().length() == 0) && (va2.getDepends() != null && va2.getDepends().length() > 0)) { return -1; } else { return va1.getDependencyList().size() - va2.getDependencyList().size(); } } }); String methods = null; for (Iterator i = lActions.iterator(); i.hasNext();) { ValidatorAction va = (ValidatorAction) i.next(); if (methods == null) { methods = va.getMethod() + "(form)"; } else { methods += " && " + va.getMethod() + "(form)"; } } results.append(getJavascriptBegin(methods)); for (Iterator i = lActions.iterator(); i.hasNext();) { ValidatorAction va = (ValidatorAction) i.next(); String jscriptVar = null; String functionName = null; if (va.getJsFunctionName() != null && va.getJsFunctionName().length() > 0) { functionName = va.getJsFunctionName(); } else { functionName = va.getName(); } results.append(" function " + functionName + " () { \n"); for (Iterator x = form.getFields().iterator(); x.hasNext();) { Field field = (Field) x.next(); // Skip indexed fields for now until there is a good way to handle // error messages (and the length of the list (could retrieve from scope?)) if (field.isIndexed() || field.getPage() != page || !field.isDependency(va.getName())) { continue; } String message = MessageUtils.getMessage(messages, locale, va, field); message = (message != null) ? message : ""; jscriptVar = this.getNextVar(jscriptVar); results.append(" this." + jscriptVar + " = new Array(\"" + field.getKey() + "\", \"" + message + "\", "); results.append("new Function (\"varName\", \""); Map vars = field.getVars(); // Loop through the field's variables. Iterator varsIterator = vars.keySet().iterator(); while (varsIterator.hasNext()) { String varName = (String) varsIterator.next(); Var var = (Var) vars.get(varName); String varValue = var.getValue(); String jsType = var.getJsType(); // skip requiredif variables field, fieldIndexed, fieldTest, fieldValue if (varName.startsWith("field")) { continue; } if (Var.JSTYPE_INT.equalsIgnoreCase(jsType)) { results.append("this." + varName + "=" + ValidatorUtils.replace(varValue, "\\", "\\\\") + "; "); } else if (Var.JSTYPE_REGEXP.equalsIgnoreCase(jsType)) { results.append("this." + varName + "=/" + ValidatorUtils.replace(varValue, "\\", "\\\\") + "/; "); } else if (Var.JSTYPE_STRING.equalsIgnoreCase(jsType)) { results.append("this." + varName + "='" + ValidatorUtils.replace(varValue, "\\", "\\\\") + "'; "); // So everyone using the latest format doesn't need to change their xml files immediately. } else if ("mask".equalsIgnoreCase(varName)) { results.append("this." + varName + "=/" + ValidatorUtils.replace(varValue, "\\", "\\\\") + "/; "); } else { results.append("this." + varName + "='" + ValidatorUtils.replace(varValue, "\\", "\\\\") + "'; "); } } results.append(" return this[varName];\"));\n"); } results.append(" } \n\n"); } } else if ("true".equalsIgnoreCase(staticJavascript)) { results.append(this.getStartElement()); if ("true".equalsIgnoreCase(htmlComment)) { results.append(htmlBeginComment); } } } if ("true".equalsIgnoreCase(staticJavascript)) { results.append(getJavascriptStaticMethods(resources)); } if (form != null && ("true".equalsIgnoreCase(dynamicJavascript) || "true".equalsIgnoreCase(staticJavascript))) { results.append(getJavascriptEnd()); } JspWriter writer = pageContext.getOut(); try { writer.print(results.toString()); } catch (IOException e) { throw new JspException(e.getMessage()); } return (SKIP_BODY); }
From source file:us.mn.state.health.lims.taglib.JavascriptValidatorTag.java
/** * Get List of actions for the given Form. * @param resources/*www. j av a 2s .com*/ * @param form * @return A sorted List of ValidatorAction objects. */ private List createActionList(ValidatorResources resources, Form form) { List actionMethods = new ArrayList(); Iterator iterator = form.getFields().iterator(); while (iterator.hasNext()) { Field field = (Field) iterator.next(); for (Iterator x = field.getDependencyList().iterator(); x.hasNext();) { Object o = x.next(); if (o != null && !actionMethods.contains(o)) { actionMethods.add(o); } } } List actions = new ArrayList(); // Create list of ValidatorActions based on actionMethods iterator = actionMethods.iterator(); while (iterator.hasNext()) { String depends = (String) iterator.next(); ValidatorAction va = resources.getValidatorAction(depends); // throw nicer NPE for easier debugging if (va == null) { throw new NullPointerException( "Depends string \"" + depends + "\" was not found in validator-rules.xml."); } if (va.getJavascript() != null && va.getJavascript().length() > 0) { actions.add(va); } else { iterator.remove(); } } Collections.sort(actions, actionComparator); return actions; }