In the course of some nullability refinements along with #30576, it turns out that ThreadLocalTargetSource
always initializes its NamedThreadLocal
with a String that contains a null
bean name. That bean name should be appended lazily in a toString()
implementation instead.