Example usage for org.apache.commons.validator UrlValidator isValid

List of usage examples for org.apache.commons.validator UrlValidator isValid

Introduction

In this page you can find the example usage for org.apache.commons.validator UrlValidator isValid.

Prototype

public boolean isValid(String value) 

Source Link

Document

Checks if a field has a valid url address.

Usage

From source file:com.pkrete.locationservice.admin.util.WebUtil.java

/**
 * Checks the form of the given URL address.
 *
 * @param url the URL to be checked/*from   ww  w  . j  ava2s  .  co  m*/
 * @return if the URL is badly formed returns false, otherwise returns true
 */
public static boolean validateUrl(String url) {
    UrlValidator urlValidator = new UrlValidator();
    return urlValidator.isValid(url);
}

From source file:com.reizes.shiva.utils.CommonUtil.java

/**
 * http  https URL ??  //  w w  w.  j  a v  a 2s .c o m
 * @param url
 * @return
 * @throws MalformedURLException 
 */
public static boolean isValidHttpUrl(String url) {
    if (url.length() > 255) { // 255?  url ?  ?
        return false;
    }

    String[] schemes = { "http", "https" };
    UrlValidator urlValidator = new UrlValidator(schemes);
    if (urlValidator.isValid(url)) {
        return true;
    }

    // ?   ??  
    URL urlTemp;
    try {
        urlTemp = new URL(url);
    } catch (MalformedURLException e) {
        return false;
    }
    String forUnicodeUrl = urlTemp.getProtocol() + "://" + IDN.toASCII(urlTemp.getHost());
    if (urlValidator.isValid(forUnicodeUrl)) {
        // ???  http://.com  www      ? 
        return true;
    }

    String regex = "([a-zA-Z0-9-.\\-&/%=?:#$(),.+;~\\_]+)"; // ?  ??  
    if (urlTemp.getHost().startsWith("\"")) {
        // ?? ? ??  ? URL
        return false;
    } else if (urlTemp.getHost().startsWith(".")) {
        // ?? ? ??  ? URL
        return false;
    } else if (urlTemp.getProtocol().startsWith("http") && urlTemp.getHost().matches(regex)) {
        return true;
    }

    return false;
}

From source file:jp.terasoluna.fw.validation.ValidationUtil.java

/**
 * ?URL??????????/*from   w  w  w .ja v  a  2s  .  co  m*/
 *
 * <code>null</code> ???????
 *
 * @param value 
 * @param allowallschemes ????????
 * @param allow2slashes ??????
 * @param nofragments URL??????
 * @param schemesVar ??
 * ?????
 * @return
 *            ?URL??????
 *            <code>true</code>?
 *            ?????<code>false</code>?
 */
public static boolean isUrl(String value, boolean allowallschemes, boolean allow2slashes, boolean nofragments,
        String schemesVar) {

    if (StringUtils.isEmpty(value)) {
        return true;
    }

    // ?
    int options = 0;
    if (allowallschemes) {
        options += UrlValidator.ALLOW_ALL_SCHEMES;
    }
    if (allow2slashes) {
        options += UrlValidator.ALLOW_2_SLASHES;
    }
    if (nofragments) {
        options += UrlValidator.NO_FRAGMENTS;
    }

    // ??????GenericValidator
    if (options == 0 && schemesVar == null) {
        if (GenericValidator.isUrl(value)) {
            return true;
        }
        return false;
    }

    // String[]??
    String[] schemes = null;
    if (schemesVar != null) {

        StringTokenizer st = new StringTokenizer(schemesVar, ",");
        schemes = new String[st.countTokens()];

        int i = 0;
        while (st.hasMoreTokens()) {
            schemes[i++] = st.nextToken().trim();
        }
    }

    // ????UrlValidator
    UrlValidator urlValidator = new UrlValidator(schemes, options);
    if (urlValidator.isValid(value)) {
        return true;
    }
    return false;
}

From source file:com.serli.maven.plugin.quality.mojo.LicenseMojo.java

/**
 * @param project//  w ww  . j  a va2 s . com
 *          not null
 * @param url
 *          not null
 * @return a valid URL object from the url string
 * @throws IOException
 *           if any
 */
protected static URL getLicenseURL(MavenProject project, String url) throws IOException {
    URL licenseUrl = null;
    UrlValidator urlValidator = new UrlValidator(UrlValidator.ALLOW_ALL_SCHEMES);
    // UrlValidator does not accept file URLs because the file
    // URLs do not contain a valid authority (no hostname).
    // As a workaround accept license URLs that start with the
    // file scheme.
    if (urlValidator.isValid(url) || StringUtils.defaultString(url).startsWith("file://")) {
        try {
            licenseUrl = new URL(url);
        } catch (MalformedURLException e) {
            throw new MalformedURLException(
                    "The license url '" + url + "' seems to be invalid: " + e.getMessage());
        }
    } else {
        File licenseFile = new File(project.getBasedir(), url);
        if (!licenseFile.exists()) {
            // Workaround to allow absolute path names while
            // staying compatible with the way it was...
            licenseFile = new File(url);
        }
        if (!licenseFile.exists()) {
            throw new IOException("Maven can't find the file '" + licenseFile + "' on the system.");
        }
        try {
            licenseUrl = licenseFile.toURI().toURL();
        } catch (MalformedURLException e) {
            throw new MalformedURLException(
                    "The license url '" + url + "' seems to be invalid: " + e.getMessage());
        }
    }

    return licenseUrl;
}

From source file:conversores.UrlConverter.java

@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
    String HTTP = "http://";
    StringBuilder url = new StringBuilder();

    if (!value.startsWith(HTTP, 0)) {
        url.append(HTTP);/*from  www.  ja  v a  2 s.  c o  m*/
    }
    url.append(value);

    UrlValidator urlValidator = new UrlValidator();

    if (!urlValidator.isValid(url.toString())) {

        FacesMessage msg = new FacesMessage("Error al converir la url.", "Formato URL invalido.");
        msg.setSeverity(FacesMessage.SEVERITY_ERROR);
        throw new ConverterException(msg);
    }

    URLBookmark urlBookmark = new URLBookmark(url.toString());

    return urlBookmark;
}

From source file:it.eng.spagobi.commons.validation.SpagoBIValidationImpl.java

public static EMFValidationError validateField(String fieldName, String fieldLabel, String value,
        String validatorName, String arg0, String arg1, String arg2) throws Exception {

    List params = null;//from   w ww . j  av a 2s. co  m

    if (validatorName.equalsIgnoreCase("MANDATORY")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the MANDATORY VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        if (GenericValidator.isBlankOrNull(value)) {
            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_MANDATORY, params);

        }

    } else if (validatorName.equalsIgnoreCase("URL")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the URL VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        UrlValidator urlValidator = new SpagoURLValidator();
        if (!GenericValidator.isBlankOrNull(value) && !urlValidator.isValid(value)) {
            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_URL, params);

        }
    } else if (validatorName.equalsIgnoreCase("LETTERSTRING")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the LETTERSTRING VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        if (!GenericValidator.isBlankOrNull(value)
                && !GenericValidator.matchRegexp(value, LETTER_STRING_REGEXP)) {
            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_LETTERSTRING, params);

        }
    } else if (validatorName.equalsIgnoreCase("ALFANUMERIC")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the ALFANUMERIC VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        if (!GenericValidator.isBlankOrNull(value)
                && !GenericValidator.matchRegexp(value, ALPHANUMERIC_STRING_REGEXP)) {

            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_ALFANUMERIC, params);

        }
    } else if (validatorName.equalsIgnoreCase("NUMERIC")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the NUMERIC VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        if (!GenericValidator.isBlankOrNull(value) && (!(GenericValidator.isInt(value)
                || GenericValidator.isFloat(value) || GenericValidator.isDouble(value)
                || GenericValidator.isShort(value) || GenericValidator.isLong(value)))) {

            // The string is not a integer, not a float, not double, not short, not long
            // so is not a number

            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_NUMERIC, params);

        }

    } else if (validatorName.equalsIgnoreCase("EMAIL")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the EMAIL VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        if (!GenericValidator.isBlankOrNull(value) && !GenericValidator.isEmail(value)) {

            // Generate errors
            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_EMAIL, params);

        }
    } else if (validatorName.equalsIgnoreCase("BOOLEAN")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the MANDATORY VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        if (!GenericValidator.isBlankOrNull(value) && !value.equalsIgnoreCase("true")
                && !value.equalsIgnoreCase("false")) {
            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_BOOLEAN, params);

        }

    } else if (validatorName.equalsIgnoreCase("FISCALCODE")) {
        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                "Apply the FISCALCODE VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
        if (!GenericValidator.isBlankOrNull(value)
                && !GenericValidator.matchRegexp(value, FISCAL_CODE_REGEXP)) {

            //             Generate errors
            params = new ArrayList();
            params.add(fieldLabel);
            return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_FISCALCODE, params);

        }
    } else if (validatorName.equalsIgnoreCase("DECIMALS")) {
        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the DECIMALS VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            int maxNumberOfDecimalDigit = Integer.valueOf(arg0).intValue();
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Max Numbers of decimals is [" + maxNumberOfDecimalDigit + "]");
            String decimalSeparator = arg1;

            if (GenericValidator.isBlankOrNull(decimalSeparator)) {
                decimalSeparator = ".";
            }

            int pos = value.indexOf(decimalSeparator);
            String decimalCharacters = "";
            if (pos != -1)
                decimalCharacters = value.substring(pos + 1);

            if (decimalCharacters.length() > maxNumberOfDecimalDigit) {
                // Generate errors
                params = new ArrayList();
                params.add(fieldLabel);
                params.add(String.valueOf(maxNumberOfDecimalDigit));
                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_DECIMALS, params);
            }
        }
    } else if (validatorName.equalsIgnoreCase("NUMERICRANGE")) {
        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the NUMERICRANGE VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            String firstValueStr = arg0;
            String secondValueStr = arg1;
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Range is [" + firstValueStr + "< x <" + secondValueStr + "]");
            boolean syntaxCorrect = true;
            if (!GenericValidator.isDouble(value)) {
                SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                        " CANNOT APPLY THE NUMERICRANGE VALIDATOR  value [" + value + "] is not a Number");
                syntaxCorrect = false;
            }
            if (!GenericValidator.isDouble(firstValueStr)) {
                SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                        " CANNOT APPLY THE NUMERICRANGE VALIDATOR  first value of range [" + firstValueStr
                                + "] is not a Number");
                syntaxCorrect = false;
            }
            if (!GenericValidator.isDouble(secondValueStr)) {
                SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                        " CANNOT APPLY THE NUMERICRANGE VALIDATOR  second value of range [" + secondValueStr
                                + "] is not a Number");
                syntaxCorrect = false;
            }
            if (syntaxCorrect) {
                double firstValue = Double.valueOf(firstValueStr).doubleValue();
                double secondValue = Double.valueOf(secondValueStr).doubleValue();
                double valueToCheckDouble = Double.valueOf(value).doubleValue();
                if (!(GenericValidator.isInRange(valueToCheckDouble, firstValue, secondValue))) {

                    params = new ArrayList();
                    params.add(fieldLabel);
                    params.add(firstValueStr);
                    params.add(secondValueStr);
                    return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_RANGE, params);

                }
            } else {
                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_GENERIC);
            }
        }
    } else if (validatorName.equalsIgnoreCase("DATERANGE")) {

        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the DATERANGE VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            String firstValueStr = arg0;
            String secondValueStr = arg1;
            String dateFormat = arg2;
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Range is [" + firstValueStr + "< x <" + secondValueStr + "]");
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Date Format is  [" + dateFormat + "]");
            //         //boolean syntaxCorrect = false;
            boolean syntaxCorrect = true;

            //if (!GenericValidator.isDate(value,dateFormat,true)){
            if (!GenericValidator.isDate(value, dateFormat, true)) {
                SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                        " CANNOT APPLY THE DATERANGE VALIDATOR  value [" + value
                                + "] is not a is not valid Date according to [" + dateFormat + "]");
                syntaxCorrect = false;
            }
            //if (!GenericValidator.isDate(firstValueStr,dateFormat,true)){
            if (!GenericValidator.isDate(firstValueStr, dateFormat, true)) {
                SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                        " CANNOT APPLY THE DATERANGE VALIDATOR  first value of range [" + firstValueStr
                                + "] is not valid Date according to [" + dateFormat + "]");
                syntaxCorrect = false;
            }
            //if (!GenericValidator.isDate(secondValueStr,dateFormat, true)){
            if (!GenericValidator.isDate(secondValueStr, dateFormat, true)) {
                SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                        " CANNOT APPLY THE DATERANGE VALIDATOR  second value of range [" + secondValueStr
                                + "] is not a valid Date according to [" + dateFormat + "]");
                syntaxCorrect = false;
            }

            if (syntaxCorrect) {
                DateFormat df = new SimpleDateFormat(dateFormat);

                Date firstValueDate = df.parse(firstValueStr);
                Date secondValueDate = df.parse(secondValueStr);
                Date theValueDate = df.parse(value);

                if ((theValueDate.getTime() < firstValueDate.getTime())
                        || (theValueDate.getTime() > secondValueDate.getTime())) {
                    params = new ArrayList();
                    params.add(fieldLabel);
                    params.add(firstValueStr);
                    params.add(secondValueStr);
                    return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_RANGE, params);
                }
            } else {
                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_GENERIC);
            }
        }
    } else if (validatorName.equalsIgnoreCase("STRINGRANGE")) {
        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the STRINGRANGE VALIDATOR to field [" + fieldName + "] with value [" + value + "]");

            String firstValueStr = arg0;
            String secondValueStr = arg1;
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Range is [" + firstValueStr + "< x <" + secondValueStr + "]");
            //if (firstValueStr.compareTo(secondValueStr) > 0){
            if ((value.compareTo(firstValueStr) < 0) || (value.compareTo(secondValueStr) > 0)) {
                params = new ArrayList();
                params.add(fieldLabel);
                params.add(firstValueStr);
                params.add(secondValueStr);
                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_RANGE, params);
            }
        }
    } else if (validatorName.equalsIgnoreCase("MAXLENGTH")) {
        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the MAXLENGTH VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            int maxLength = Integer.valueOf(arg0).intValue();
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "maxLength is [" + maxLength + "]");
            if (!GenericValidator.maxLength(value, maxLength)) {

                params = new ArrayList();
                params.add(fieldLabel);
                params.add(String.valueOf(maxLength));

                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_MAXLENGTH, params);

            }
        }
    } else if (validatorName.equalsIgnoreCase("MINLENGTH")) {
        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the MINLENGTH VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            int minLength = Integer.valueOf(arg0).intValue();
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "minLength is [" + minLength + "]");
            if (!GenericValidator.minLength(value, minLength)) {

                // Generate Errors
                params = new ArrayList();
                params.add(fieldLabel);
                params.add(String.valueOf(minLength));

                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_MINLENGTH, params);

            }
        }
    } else if (validatorName.equalsIgnoreCase("REGEXP")) {
        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the REGEXP VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            String regexp = arg0;
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator", "regexp is [" + regexp + "]");
            if (!(GenericValidator.matchRegexp(value, regexp))) {

                // Generate Errors
                params = new ArrayList();
                params.add(fieldLabel);
                params.add(regexp);

                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_REGEXP, params);

            }
        }
    } else if (validatorName.equalsIgnoreCase("XSS")) {
        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the XSS VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            String toVerify = value.toUpperCase();
            if (toVerify.contains("<A") || toVerify.contains("<LINK") || toVerify.contains("<IMG")
                    || toVerify.contains("<SCRIPT") || toVerify.contains("&LT;A")
                    || toVerify.contains("&LT;LINK") || toVerify.contains("&LT;IMG")
                    || toVerify.contains("&LT;SCRIPT")) {

                // Generate Errors
                params = new ArrayList();
                params.add(fieldLabel);

                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_XSS, params);

            }
        }
    } else if (validatorName.equalsIgnoreCase("DATE")) {

        if (!GenericValidator.isBlankOrNull(value)) {
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "Apply the DATE VALIDATOR to field [" + fieldName + "] with value [" + value + "]");
            String dateFormat = arg0;
            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                    "dateFormat is [" + dateFormat + "]");
            //if (!GenericValidator.isDate(value, dateFormat, true)){
            if (!GenericValidator.isDate(value, dateFormat, true)) {

                //Generate Errors
                params = new ArrayList();
                params.add(fieldLabel);
                params.add(dateFormat);

                return new EMFValidationError(EMFErrorSeverity.ERROR, fieldName, ERROR_DATE, params);
            }
        }

    }

    // all checks had positive result (no errors)
    return null;
}

From source file:mx.jalan.gdcu.Vista.Gestor.Detalles.java

private void btnAceptarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAceptarActionPerformed
    ok = true;//from w ww  .j  av  a  2s  .  c  o m
    String mensaje = "";
    UrlValidator validador = new UrlValidator();

    if (!txtFuente.getText().trim().isEmpty()) {
        if (!validador.isValid(txtFuente.getText())) {
            mensaje += "La url fuente no es valida\n";

        } else {
            fuente = txtFuente.getText();
        }
    }

    if (!txtDescarga.getText().trim().isEmpty()) {
        if (!validador.isValid(txtDescarga.getText())) {
            mensaje += "La url descarga no es valida\n";
        } else {
            descarga = txtDescarga.getText();
        }
    }

    if (!mensaje.equals("")) {
        JOptionPane.showMessageDialog(this, mensaje, "Revisa los campos", JOptionPane.ERROR_MESSAGE);
        return;
    }

    this.dispose();
}

From source file:dept_integration.Dept_Integbean.java

@SuppressWarnings("empty-statement")
public String deptValidation(Connection con, Dept_Integbean tbeans) throws Exception {
    // String flag = "";

    String deptname = tbeans.getDept_name();
    System.out.println("Department Name is..." + deptname);
    String pattern = "[a-zA-Z]+(\\s[a-zA-Z]+)+";
    String nameEx = "/^[a-zA-Z]+$/";
    Boolean b = !deptname.matches(nameEx);
    System.out.println("boolean value is...." + b);
    // String nameEx = "/^[a-zA-Z]+$/";
    String nameEx1 = "/^[a-zA-Z0-9]+$/";
    String msg = "Please Fill The Appropriate";//(!deptname.matches(nameEx))

    if ((b == false) || (deptname == null) || (deptname == "")) {
        msg = msg + "Department Name\n";
    }/*from   w ww .j av  a2 s .c  o  m*/
    String deptcod = tbeans.getDept_code();
    Boolean c = !deptcod.matches(nameEx1);
    if ((c == false) || (deptcod == null) || (deptcod == "")) {
        msg = msg + "Department Code" + "\n";
    }
    String ipadrs = tbeans.getIp_adrs();

    IPAddressValidator ipv = new IPAddressValidator();
    if (!ipv.validate(ipadrs)) {
        msg = msg + "Ip Address" + "\n";
    }
    String url = tbeans.getResponse_url();
    UrlValidator urlValidator = new UrlValidator();
    if (!urlValidator.isValid(url)) {
        msg = msg + "Response Url" + "\n";
    }
    if (!urlValidator.isValid(tbeans.getError_url())) {
        msg = msg + "Error Url" + "\n";
    }
    return msg;

}

From source file:de.knurt.heinzelmann.ui.html.Text2Html.java

public String linkUrls(UrlValidator urlValidator, String string, String target) {
    if (string != null && string.trim().isEmpty() == false) {
        String workWith = string.trim();
        String[] nonWss = workWith.split("\\s+");
        String[] wss = workWith.split("\\S+");
        String result = "";
        int i = 0;
        while (i < nonWss.length) {
            if (urlValidator.isValid(nonWss[i])) {
                result += HtmlFactory.get_a(nonWss[i], nonWss[i]).att("target", target).toString();
            } else {
                result += nonWss[i];//from  w  w  w .jav  a 2  s  .  c  o  m
            }
            i++;
            if (wss.length > i) {
                result += wss[i];
            }
        }
        if (string.equals(workWith) == false) {
            // whitespace at start or end
            if (string.matches("\\s.*")) {
                result = string.split("\\S+")[0] + result;
            }
            if (string.matches(".*\\s")) {
                result += string.split("\\S+")[i];
            }
        }
        return result;
    } else {
        return string;
    }
}

From source file:it.eng.spagobi.commons.utilities.BIObjectValidator.java

/**
 * For each input field type (Numeric, URL, extc:), this method applies validation.
 * Every time a validation fails, an error is added to the <code>errorHandler</code>
 * errors stack./*from w ww  . ja  v a 2s  .c  om*/
 * The field label to be displayed is defined in file validation.xml for each 
 * validation: if it is not defined it is set with the field name; if it starts with 
 * "#" it is interpreted as a key and the message is recovered by 
 * PortletUtilities.getMessage(key, "messages") method, else it remains unchanged. 
 * 
 * @param serviceRequest The request Source Bean
 * @param errorHandler The errors Stack 
 * @throws Exception If any exception occurs.
 */
private void automaticValidation(SourceBean serviceRequest, EMFErrorHandler errorHandler) throws Exception {

    // Reperisco l'elenco di tutti gli attributi che mi aspetto di trovare
    // nella richiesta
    List fields = _validationStructure.getAttributeAsList("FIELDS.FIELD");

    for (Iterator iter = fields.iterator(); iter.hasNext();) {

        String value = null;

        List validators = null;
        SourceBean currentValidator = null;
        String validatorName = null;
        Iterator itValidators = null;
        try {
            SourceBean field = (SourceBean) iter.next();

            String fieldName = (String) field.getAttribute("name");

            value = (String) serviceRequest.getAttribute(fieldName);

            //********************************************
            String fieldLabel = (String) field.getAttribute("label");
            if (fieldLabel != null && fieldLabel.startsWith("#")) {
                String key = fieldLabel.substring(1);
                String fieldDescription = PortletUtilities.getMessage(key, "messages");
                if (fieldDescription != null && !fieldDescription.trim().equals(""))
                    fieldLabel = fieldDescription;
            }
            if (fieldLabel == null || fieldLabel.trim().equals(""))
                fieldLabel = fieldName;
            //********************************************

            validators = field.getAttributeAsList("VALIDATOR");

            itValidators = validators.iterator();

            Vector params = new Vector();
            while (itValidators.hasNext()) {
                currentValidator = (SourceBean) itValidators.next();
                validatorName = (String) currentValidator.getAttribute("validatorName");

                if (validatorName.equalsIgnoreCase("MANDATORY")) {
                    SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                            "Apply the MANDATORY VALIDATOR to field [" + field + "] with value [" + value
                                    + "]");
                    if (GenericValidator.isBlankOrNull(value)) {
                        params = new Vector();
                        params.add(fieldLabel);
                        errorHandler
                                .addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_MANDATORY, params));

                    }

                } else if (validatorName.equalsIgnoreCase("URL")) {
                    SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                            "Apply the URL VALIDATOR to field [" + field + "] with value [" + value + "]");
                    UrlValidator urlValidator = new SpagoURLValidator();
                    if (!GenericValidator.isBlankOrNull(value) && !urlValidator.isValid(value)) {
                        params = new Vector();
                        params.add(fieldLabel);
                        errorHandler.addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_URL, params));

                    }
                } else if (validatorName.equalsIgnoreCase("LETTERSTRING")) {
                    SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                            "Apply the LETTERSTRING VALIDATOR to field [" + field + "] with value [" + value
                                    + "]");
                    if (!GenericValidator.isBlankOrNull(value)
                            && !GenericValidator.matchRegexp(value, LETTER_STRING_REGEXP)) {
                        params = new Vector();
                        params.add(fieldLabel);
                        errorHandler
                                .addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_LETTERSTRING, params));

                    }
                } else if (validatorName.equalsIgnoreCase("ALFANUMERIC")) {
                    SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                            "Apply the ALFANUMERIC VALIDATOR to field [" + field + "] with value [" + value
                                    + "]");
                    if (!GenericValidator.isBlankOrNull(value)
                            && !GenericValidator.matchRegexp(value, ALPHANUMERIC_STRING_REGEXP)) {

                        params = new Vector();
                        params.add(fieldLabel);
                        errorHandler
                                .addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_ALFANUMERIC, params));

                    }
                } else if (validatorName.equalsIgnoreCase("NUMERIC")) {
                    SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                            "Apply the NUMERIC VALIDATOR to field [" + field + "] with value [" + value + "]");
                    if (!GenericValidator.isBlankOrNull(value) && (!(GenericValidator.isInt(value)
                            || GenericValidator.isFloat(value) || GenericValidator.isDouble(value)
                            || GenericValidator.isShort(value) || GenericValidator.isLong(value)))) {

                        // The string is not a integer, not a float, not double, not short, not long
                        // so is not a number

                        params = new Vector();
                        params.add(fieldLabel);
                        errorHandler.addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_NUMERIC, params));

                    }

                } else if (validatorName.equalsIgnoreCase("EMAIL")) {
                    SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                            "Apply the EMAIL VALIDATOR to field [" + field + "] with value [" + value + "]");
                    if (!GenericValidator.isBlankOrNull(value) && !GenericValidator.isEmail(value)) {

                        // Generate errors
                        params = new Vector();
                        params.add(fieldLabel);
                        errorHandler.addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_EMAIL, params));

                    }
                } else if (validatorName.equalsIgnoreCase("FISCALCODE")) {
                    SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                            "Apply the FISCALCODE VALIDATOR to field [" + field + "] with value [" + value
                                    + "]");
                    if (!GenericValidator.isBlankOrNull(value)
                            && !GenericValidator.matchRegexp(value, FISCAL_CODE_REGEXP)) {

                        //                      Generate errors
                        params = new Vector();
                        params.add(fieldLabel);
                        errorHandler
                                .addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_FISCALCODE, params));

                    }
                } else if (validatorName.equalsIgnoreCase("DECIMALS")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the DECIMALS VALIDATOR to field [" + field + "] with value [" + value
                                        + "]");
                        int maxNumberOfDecimalDigit = Integer
                                .valueOf((String) currentValidator.getAttribute("arg0")).intValue();
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Max Numbers of decimals is [" + maxNumberOfDecimalDigit + "]");
                        String decimalSeparator = (String) currentValidator.getAttribute("arg1");

                        if (GenericValidator.isBlankOrNull(decimalSeparator)) {
                            decimalSeparator = ".";
                        }

                        int pos = value.indexOf(decimalSeparator);
                        String decimalCharacters = "";
                        if (pos != -1)
                            decimalCharacters = value.substring(pos + 1);

                        if (decimalCharacters.length() > maxNumberOfDecimalDigit) {
                            // Generate errors
                            params = new Vector();
                            params.add(fieldLabel);
                            params.add(String.valueOf(maxNumberOfDecimalDigit));
                            errorHandler
                                    .addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_DECIMALS, params));
                        }
                    }
                } else if (validatorName.equalsIgnoreCase("NUMERICRANGE")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the NUMERICRANGE VALIDATOR to field [" + field + "] with value [" + value
                                        + "]");
                        String firstValueStr = (String) currentValidator.getAttribute("arg0");
                        String secondValueStr = (String) currentValidator.getAttribute("arg1");
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Range is [" + firstValueStr + "< x <" + secondValueStr + "]");
                        boolean syntaxCorrect = true;
                        if (!GenericValidator.isDouble(value)) {
                            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                    " CANNOT APPLY THE NUMERICRANGE VALIDATOR  value [" + value
                                            + "] is not a Number");
                            syntaxCorrect = false;
                        }
                        if (!GenericValidator.isDouble(firstValueStr)) {
                            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                    " CANNOT APPLY THE NUMERICRANGE VALIDATOR  first value of range ["
                                            + firstValueStr + "] is not a Number");
                            syntaxCorrect = false;
                        }
                        if (!GenericValidator.isDouble(secondValueStr)) {
                            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                    " CANNOT APPLY THE NUMERICRANGE VALIDATOR  second value of range ["
                                            + secondValueStr + "] is not a Number");
                            syntaxCorrect = false;
                        }
                        if (syntaxCorrect) {
                            double firstValue = Double.valueOf(firstValueStr).doubleValue();
                            double secondValue = Double.valueOf(secondValueStr).doubleValue();
                            double valueToCheckDouble = Double.valueOf(value).doubleValue();
                            if (!(GenericValidator.isInRange(valueToCheckDouble, firstValue, secondValue))) {

                                params = new Vector();
                                params.add(fieldLabel);
                                params.add(firstValueStr);
                                params.add(secondValueStr);
                                errorHandler.addError(
                                        new EMFUserError(EMFErrorSeverity.ERROR, ERROR_RANGE, params));

                            }
                        } else {
                            errorHandler.addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_GENERIC));
                        }
                    }
                } else if (validatorName.equalsIgnoreCase("DATERANGE")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the DATERANGE VALIDATOR to field [" + field + "] with value [" + value
                                        + "]");
                        String firstValueStr = (String) currentValidator.getAttribute("arg0");
                        String secondValueStr = (String) currentValidator.getAttribute("arg1");
                        String dateFormat = (String) currentValidator.getAttribute("arg2");
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Range is [" + firstValueStr + "< x <" + secondValueStr + "]");
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Date Format is  [" + dateFormat + "]");
                        boolean syntaxCorrect = false;

                        if (!GenericValidator.isDate(value, dateFormat, true)) {
                            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                    " CANNOT APPLY THE DATERANGE VALIDATOR  value [" + value
                                            + "] is not a is not valid Date according to [" + dateFormat + "]");
                            syntaxCorrect = false;
                        }
                        if (!GenericValidator.isDate(firstValueStr, dateFormat, true)) {
                            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                    " CANNOT APPLY THE DATERANGE VALIDATOR  first value of range ["
                                            + firstValueStr + "] is not valid Date according to [" + dateFormat
                                            + "]");
                            syntaxCorrect = false;
                        }
                        if (!GenericValidator.isDate(secondValueStr, dateFormat, true)) {
                            SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                    " CANNOT APPLY THE DATERANGE VALIDATOR  second value of range ["
                                            + secondValueStr + "] is not a valid Date according to ["
                                            + dateFormat + "]");
                            syntaxCorrect = false;
                        }

                        if (syntaxCorrect) {
                            DateFormat df = new SimpleDateFormat(dateFormat);

                            Date firstValueDate = df.parse(firstValueStr);
                            Date secondValueDate = df.parse(secondValueStr);
                            Date theValueDate = df.parse(value);

                            if ((theValueDate.getTime() < firstValueDate.getTime())
                                    || (theValueDate.getTime() > secondValueDate.getTime())) {
                                params = new Vector();
                                params.add(fieldLabel);
                                params.add(firstValueStr);
                                params.add(secondValueStr);
                                errorHandler.addError(
                                        new EMFUserError(EMFErrorSeverity.ERROR, ERROR_RANGE, params));
                            }
                        } else {
                            errorHandler.addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_GENERIC));
                        }
                    }

                } else if (validatorName.equalsIgnoreCase("STRINGRANGE")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the STRINGRANGE VALIDATOR to field [" + field + "] with value [" + value
                                        + "]");

                        String firstValueStr = (String) currentValidator.getAttribute("arg0");
                        String secondValueStr = (String) currentValidator.getAttribute("arg1");
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Range is [" + firstValueStr + "< x <" + secondValueStr + "]");

                        if (firstValueStr.compareTo(secondValueStr) > 0) {
                            params = new Vector();
                            params.add(fieldLabel);
                            params.add(firstValueStr);
                            params.add(secondValueStr);
                            errorHandler
                                    .addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_RANGE, params));
                        }
                    }
                } else if (validatorName.equalsIgnoreCase("MAXLENGTH")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the MAXLENGTH VALIDATOR to field [" + field + "] with value [" + value
                                        + "]");
                        int maxLength = Integer.valueOf((String) currentValidator.getAttribute("arg0"))
                                .intValue();
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "maxLength is [" + maxLength + "]");
                        if (!GenericValidator.maxLength(value, maxLength)) {

                            params = new Vector();
                            params.add(fieldLabel);
                            params.add(String.valueOf(maxLength));

                            errorHandler.addError(
                                    new EMFUserError(EMFErrorSeverity.ERROR, ERROR_MAXLENGTH, params));

                        }
                    }
                } else if (validatorName.equalsIgnoreCase("MINLENGTH")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the MINLENGTH VALIDATOR to field [" + field + "] with value [" + value
                                        + "]");
                        int minLength = Integer.valueOf((String) currentValidator.getAttribute("arg0"))
                                .intValue();
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "minLength is [" + minLength + "]");
                        if (!GenericValidator.minLength(value, minLength)) {

                            // Generate Errors
                            params = new Vector();
                            params.add(fieldLabel);
                            params.add(String.valueOf(minLength));

                            errorHandler.addError(
                                    new EMFUserError(EMFErrorSeverity.ERROR, ERROR_MINLENGTH, params));

                        }
                    }
                } else if (validatorName.equalsIgnoreCase("REGEXP")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the REGEXP VALIDATOR to field [" + field + "] with value [" + value
                                        + "]");
                        String regexp = (String) currentValidator.getAttribute("arg0");
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "regexp is [" + regexp + "]");
                        if (!(GenericValidator.matchRegexp(value, regexp))) {

                            //                      Generate Errors
                            params = new Vector();
                            params.add(fieldLabel);
                            params.add(regexp);

                            errorHandler
                                    .addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_REGEXP, params));

                        }
                    }
                } else if (validatorName.equalsIgnoreCase("DATE")) {
                    if (!GenericValidator.isBlankOrNull(value)) {
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "Apply the DATE VALIDATOR to field [" + field + "] with value [" + value + "]");
                        String dateFormat = (String) currentValidator.getAttribute("arg0");
                        SpagoBITracer.info("SpagoBI", "Validator", "automaticValidator",
                                "dateFormat is [" + dateFormat + "]");
                        if (!GenericValidator.isDate(value, dateFormat, true)) {

                            //Generate Errors
                            params = new Vector();
                            params.add(fieldLabel);
                            params.add(dateFormat);

                            errorHandler.addError(new EMFUserError(EMFErrorSeverity.ERROR, ERROR_DATE, params));
                        }
                    }

                }
            } //while (itValidators.hasNext())

        } catch (Exception ex) {
            TracerSingleton.log(Constants.NOME_MODULO, TracerSingleton.INFORMATION,
                    "ValidationModule::automaticValidation", ex);

        }

    }

}