Hi Rick,
I have stumbled on the same problem but I have managed to overcome it.
My solution is to use a helper entity which contains same attributes as AccountPasswordData and additional attribute “UserName” .
When the user wants to change the password the nanoflow sets the “UserName” attribute and the rest is filled by user itself. Commit and sync the object.
On the helper entity a “Before Commit” Event is triggered in which you can use JavaAction (VerifyPassword).
I hope this helps you.