زمانی که ست کردن Id به عهده EntityManager باشه و کلید اصلی با @GeneratedValue نشانهگذاری نشه ، حالت پیشفرض
@GeneratedValue(strategy = GenerationType.IDENTITY) اعمال میشه که با نوع String همخونی نداره و خطا میگیره ، اینجا هم ایشون با تعریف نکردن getter و setter میخواستن id خودش مقدار دهی بشه نه دستی
از طرف دیگه هم stack trace ایشون تا مرحله ایجاد کوئری پیش رفته بوده.