Creating an object managed by Context Dependency Injection and validated with Bean Validation
Only two Java classes are used in this program, and they are nearly identical to what we used in Chapter 13, Desktop Graphical User Interface Coding with Swing and JavaFX. They are both subject to CDI, and the data class also uses BV. Rather than show the entire code for these beans we saw in Chapter 13, we will only look at what needs to be changed.
FinanceBean
The first annotation, @Named
, defines this class as under the control of CDI. Before CDI was widely used, JSF had its own CDI-like implementation that used the @ManagedBean
annotation. This is considered obsolete and should no longer be used. The name in the parenthesis, money
, is an alias we can use in the expression language:
@Named("money")
Scopes
When an object managed by CDI in a Jakarta application is created or destroyed, and other classes may access it, it is referred to as the Scope. There are the...