Java 8 method references: provide a Supplier capable of supplying a parameterized result
Sure.
.orElseThrow(() -> new MyException(someArgument))
It appears that you can throw only RuntimeException from the method orElseThrow
. Otherwise you will get an error message like MyException cannot be converted to java.lang.RuntimeException
Update:- This was an issue with an older version of JDK. I don't see this issue with the latest versions.
optionalUsers.orElseThrow(() -> new UsernameNotFoundException("Username not found"));