Reputation: 1707
I have a USER table with UserId as primary key, which is int and auto incremented in MySQL.
@Id
@GeneratedValue
@Column(name="USER_ID")
private Integer userId;
When I run userRepository.save(user); I am getting an error saying: org.springframework.beans.InvalidPropertyException: Invalid property 'userId' of bean class [com.mysite.model.User]: Getter for property 'userId' threw exception; nested exception is java.lang.reflect.InvocationTargetException
If I just hard coded the user id I don't get this error. What am I doing wrong?
// hard code it
user.setUserId(5);
userRepository.save(user);
Upvotes: 6
Views: 15438
Reputation: 1707
Found my problem: I was using int in my setter and getter for userId, instead of Integer.
Upvotes: 5
Reputation: 524
You may need to set the ID strategy: @GeneratedValue(strategy=GenerationType.IDENTITY)
What you have should work, but also can be quirky.
Upvotes: 5