You can make an Embedded class, which contains your two keys, and then have a reference to that class as EmbeddedId in your Entity.
You would need the @EmbeddedId and @Embeddable annotations.
@Entity
public class YourEntity {
    @EmbeddedId
    private MyKey myKey;
    @Column(name = "ColumnA")
    private String columnA;
    /** Your getters and setters **/
}
@Embeddable
public class MyKey implements Serializable {
    @Column(name = "Id", nullable = false)
    private int id;
    @Column(name = "Version", nullable = false)
    private int version;
    /** getters and setters **/
}
Another way to achieve this task is to use @IdClass annotation, and place both your id in that IdClass. Now you can use normal @Id annotation on both the attributes
@Entity
@IdClass(MyKey.class)
public class YourEntity {
   @Id
   private int id;
   @Id
   private int version;
}
public class MyKey implements Serializable {
   private int id;
   private int version;
}