
Optional.get()
Vor längerem bin ich über dieses Beispiel in unserem Code gestolpert. Aufgabe dieser Methode ist es eine Konfiguration auszulesen und (weil als String in der DB) in ein BigDecimal umzuwandeln. Tatsächlich versteckt sich hier eine Falle, da der Code davon ausgeht, dass immer ein Wert vorhanden ist (Optional.get()). Eine NoSuchElementException wird ebenfalls ignoriert. Da wir in diesem Programm viele tausend Belege täglich verarbeiten wollen, stellt sich jetzt die Frage, wie wir damit umgehen, wenn dieser (erwartete) Konfigurationswert doch fehlt. Ist unsere Anwendung dann in der Lage sich schnell und schmerzfrei von diesem Fehler zu erholen? ...