your code looks fine however make sure that you are using the @Id annotation on the variable only and not on getter method of the Entity object.
If you are using @Id in the getter then all the annotations(@Column) must be put on the getters of the attributes(irrespective of whether the attribs are of Entity or Embedded object) i.e. if you are using @ID at the getter method make the @Column on getters of other attributes and if on field then use @Column on fields only.
I faced the same issue.
Try this, it will work.