Sugerują AUTO dla maksymalnej przenośności:
/**
* @Id
* @Column(type="integer", nullable=false)
* @GeneratedValue
*/
To powinno stworzyć i połączyć sekwencję dla ciebie. Alternatywą byłoby poproszenie o serial kolumna przy użyciu IDENTITY strategia:
/**
* @Id
* @Column(type="integer", nullable=false)
* @GeneratedValue(strategy="IDENTITY")
*/
Ten powinien utworzyć Twój id kolumna jako typ serial a PostgreSQL utworzy sekwencję i ustawi dla Ciebie domyślną wartość.
Dokumentacja wskazuje, że to, co robisz, powinno działać, ale dokumentacja zwykle przedstawia tylko uproszczoną wersję rzeczywistości.
Spróbuj użyć strategy="AUTO" . Jeśli to nie zadziała, wypróbuj strategy="IDENTITY" .