I couldn't understand why you are using Container as super class and property at the same time.
@Inheritance(strategy = InheritanceType.JOINED)
You are using this annotation so subclass already related with super class 1..n One To Many relation.
After all, the solution is easy so you are lucky at this time.
@OneToMany(mappedBy = "parentContainer")
private Set<Component> content = new HashSet<>();
parentContainer should be property of Component class but I cannot see this property on Component class. The cause of exception it is.
After all, my recommendation is please remove the @OneToMany parts because using InheritanceType.JOINED doing exactly what you try.
public class Section extends Container { //You inherit it there
@Inheritance(strategy = InheritanceType.JOINED) // InheritanceType using JOIN so it will add only one foreign key on your subtable (the foreign key is primary key of super table)
public abstract class Container {
JOINED: With this strategy, each class in the hierarchy is mapped to its own table, but only the properties specific to that class are included in the table. The tables are linked using foreign keys, and a discriminator column is used in the base table to identify the subclass. This strategy provides a good balance between query performance and data integrity, but it requires additional joins when querying across the hierarchy.
And if it is not enough Baeldung is good source.
https://www.baeldung.com/hibernate-inheritance
Good luck :)