Ostatnimi czasy użytkownicy jednego z systemów przy którym pracuję regularnie wielokrotnie wciskają przyciski wysyłania formularzy. Przy okazji wyszło parę problemów typu kilkukrotnego zapisu, z którymi jak się okazuje, system sobie doskonale nie radzi. To jednak nie temat na tą notkę.
Postanowiłem jakoś zaradzić temu problemowi. Jakiś czas temu w kilku miejscach dodałem automatyczne blokowanie (a w zasadzie ukrywanie) przycisków przed kolejnym naciśnięciem. Jest to jednak rozwiązanie bardzo kłopotliwe w utrzymaniu i nieeleganckie. Dużo bardziej estetyczne wydaje się blokowanie całej zawartości strony i jednoczesne pokazywanie na ekranie stosownego komunikatu. Coś w stylu galerii w tym fotoblogu.
Ktoś widzi jakiś sens w walidacji kodu pocztowego w ten sposób?
/**
* Metoda waliduje kod miejscowości
* @param kod
* @return
*/
public static boolean validateKod(String kod) {
boolean ok = Boolean.TRUE;
ok &= Character.isDigit(kod.charAt(0));
ok &= Character.isDigit(kod.charAt(1));
ok &= ('-' == kod.charAt(2));
ok &= Character.isDigit(kod.charAt(3));
ok &= Character.isDigit(kod.charAt(4));
ok &= Character.isDigit(kod.charAt(5));
return ok;
}
Bo ja ni cholery.
Archiva, własne repozytorium artefaktów
24 stycznia 2009, 16:31:28, Patryk DobrowolskiOd jakiegoś czasu używam w pracy narzędzia o nazwie Archiva. Jest to aplikacja umożliwiająca przetrzymywanie artefaktów aplikacji napisanych w javie. Udostępniane przez nią repozytorium jest w pełni zgodne z repozytoriami Mavena. Pozwala wersjonować wszystkie artefakty, umożliwia ich upload oraz - dodatkowo - może stanowić proxy dla innych jego repozytoriów.
Ostatnio dodałem do bloga kolorowanie składni. Tak się złożyło, że nie było jeszcze okazji tego zaprezentować, ale powoli przymierzam się do wrzucenia jakichś programistycznych tekstów na bloga, więc pewnie niedługo kolorowanie się przyda. Zresztą zmieniłem ostatnio nieco wygląd bloga - chodziło głównie o to, żeby go nieco poszerzyć - właśnie w tym celu. No a dzisiejsza notka, właśnie na temat zainstalowanego przez mnie narzędzia.
Znalezione w kodzie II - klonowanie kolekcji?
30 maja 2008, 12:40:26, Patryk Dobrowolski
slParametry = (Vector)((Vector)slParametry).clone();
List listPar = (List)slParametry;
ListIterator clonelIter = listPar.listIterator();
while (clonelIter.hasNext()) {
HashMap clonePar = (HashMap)clonelIter.next();
clonePar = (HashMap)clonePar.clone();
clonelIter.set(clonePar);
Vector cloneWartosci =
(Vector)clonePar.get("wartosci");
cloneWartosci = (Vector)cloneWartosci.clone();
clonePar.put("wartosci", cloneWartosci);
}
try {
// Some code...
}
catch (Exception e) {
if (e instanceof java.sql.SQLException) {
throw (java.sql.SQLException) e;
}
else {
e.printStackTrace();
throw new SQLException(e.getMessage());
}
}