Look at this line in your
$formMessages[$field] = $message;
That attempts to access a local variable. (Which doesn't exist within that method.)
Compare to this usage in
There you are correctly accessing the intended property.
Use the same
$this-> syntax for both.