Você pode fazer algo como abaixo.
1) inicialize sua data de criação e atualização usando new Date() :
@Basic(optional = false)
@CreationTimestamp
@Column(name = "created_at")
@Temporal(TemporalType.TIMESTAMP)
private Date createdAt = new Date(); // initialize created date
@UpdateTimestamp
@Column(name = "updated_at")
@Temporal(TemporalType.TIMESTAMP)
private Date updatedAt = new Date(); // initialize updated date
2) e forneça seu método setter para data atualizada por new Date() , sem passar nenhum valor para ele:
@PreUpdate
public void setUpdatedAt() {
this.updatedAt= new Date();
}