Hibernate - @OneToOne bidireccional

Tengo 2 clases: User y UserPicture que tienen una relación 1: 1.

public class User {
     @Id
     @GeneratedValue(strategy=GenerationType.AUTO)
     @Column(name="id", nullable = false, unique = true)
 private int id;

     private String firstname;

     private String lastname;

     @OneToOne
     @JoinColumn(name = "picture") //field named "picture" in the database
     private UserPicture userPicture;

     ..
}


public class UserPicture {

     @Id
     @GeneratedValue(strategy=GenerationType.AUTO)
     @Column(name="id", nullable = false, unique = true)
     private int id;

     private Blob image;

     @OneToOne
     @JoinColumn(name = "user")
     User user;

se cargará 'user' en UserPicture pero 'userPicture' en User no. ¿En qué me he equivocado?

EDITAR ¿Tengo que agregar que solo creo una UserPicture e insértelos (con userId existente) - tal vez necesito conectar en cascada 'user' en UserPicture?

Respuestas a la pregunta(3)

Su respuesta a la pregunta