AuthenticationPrincipalArgumentResolver should use BeanResolver. This will allow the @AuthenticationPrincipal to refer to a @Bean. This would allow something like:
@AuthenticationPrincipal("@jpaEntityManager.merge(#this)")
public String doStuff(MyUserEntity currentUser) {
currentUser.setProperty(...);
// MyUserEntity is attached and will be merged
...
}