Hi Scott,
Sorry for the delay in responding. It has been a hectic few weeks.
It’s been a while since these platform decisions were made back in Java EE 6. I will share what I remember and what I have seen in the wild.
The reason the platform went this way for Servlet , JAX-RS, etc is because it makes no sense for some components to become full fledged CDI beans just to take advantage of injection. As you mention, it’s also a cognitive burden for users, many of whom would be confused as to why “injection isn’t working”. If this is the case for the Batch artifacts in question too, that would be a good case to remain consistent with the rest of the platform. It’s also sometimes the case that components have their own lifecycle and that collides with the CDI container lifecycle.
Hope that helps? I hope I am not too late. To be honest I prefer if possible to just try to keep up with the mailing list.
Reza Rahman
Jakarta EE Ambassador, Author, Blogger, Speaker
Please note views expressed here are my own as an individual community member and do not reflect the views of my employer.