I made similar with fieldset. Filename is saved to profiles table. The issue is I think, that when retrieving file it expects array, but state has path string
I assume $this->getState() return value from database, and not array. Good question. I am not very familiar with exact term, but I am building form in form method in UserResource.