For say, an admin page, it is godsend.
For say, an admin page, it is godsend.
As long as you don't attempt to do anything that's too complicated, sure.
But if you get something along the lines of:
> "User α should be redirected to view β after choosing option γ in the confirmation dialog and the view should contain fieldsets δ, ε and ζ, the latter of which will display a table with data that will be fetched according to issue η, will have an input field in each of the rows and will recalculate the values of column θ and ι, whilst also letting the user to press the button at the bottom of the table to validate all of the data and show validation messages κ, λ and μ if any of the data doesn't match business rules. Oh, and you should also be able to click on a chevron in the table to extend the table row into a sub-table to preview the data there, as well as open a modal dialog ν that will contain a dropdown and an autocomplete to select data from EAV table ξ, which should update the table data accordingly."
then it's likely that the majority of developers will run into quite a few problems with life cycle management, compared to something like React/Vue, where you could easily have nested components that would typically also be reusable wherever necessary.
At the end of the day, I'd argue that it's easier to find people who are competent in any of the nowadays popular front end frameworks/libraries, as opposed to JSF or even JSP.