> Where did the null come from?
A bit offtopic but SAP JVM puts that info in NPE error message[1], I don't know why others implementations don't, maybe it is incurring too large overhead?
[1] it is something like "Attempted to call getLocation() on Franchise object returned from getFranchise() but it was null"