Maska wprowadzania waluty JAVA

0

Witam serdecznie, mianowicie korzystajac z maski wprowadzania np:

MaskFormatter formatter = new MaskFormatter("###,##");
formatter.setValidCharacters("ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789");
JFormattedTextField textField = new JFormattedTextField(formatter);

...ogranicze sie do liczb 999,99 zł a co jakby klient chcial wpisac inna wartosc. Chcialbym to wysylac do tabeli ktora jest typu numeric w oraclu i ma dwa miejsca po przecinku wiec tez mija sie z celem gdy klient wpisze 9 (spacja ) 9, 99

jest jak w php cos takiego zebym wpisal (0-9){10},{0-9){2} ??

0

Oczywiście jest,
musisz zaimplementować klasę Validator'a

przykład walidatora dla sprawdzenia poprawności adresu e-mail:

public class EmailValidator implements Validator {

    public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException {

        String email = "^[a-zA-Z0-9_.]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$";
        Pattern mask = Pattern.compile(email);

        String pvalue = (String) value;
        Matcher matcher = mask.matcher(pvalue);

        if (!matcher.find()) {
            FacesMessage message = langi.MessageFactory.getMessage(context, "invalidEmail");
            message.setSeverity(FacesMessage.SEVERITY_ERROR);
            throw new ValidatorException(message);
        }

    }
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1