Zwei Dinge:
1. Damit Hibernate Assoziationen zwischen jeweils zwei Entitäten speichert, muss auf der "owning" Side das Feld gesetzt sein. Die owning-Side ist dabei die Seite, die NICHT das "mappedBy" Annotationsattribut hat. Also bei dir ProductsDescription.product.
2. Damit Hibernate bei einer persist() Operation einer Entität A auch navigierbare assoziierte Entitäten B speichert, muss Hibernate natürlich von A nach B (über ein Feld) kommen können. Wenn du lediglich ein Product speicherst, aber in Product.productDescriptions nicht die ProductDescription hinzufügst, wird Hibernate die ProductDescription nicht persistieren.
Um Punkt 2 zu beheben, also in der Lage zu sein, persists von Produkten zu den Beschreibungen zu cascadieren, musst du die Produktbeschreibung in die Liste am Produkt hinzufügen, bevor du EntityManager.persist(product) aufrufst.
Wie du aber schon festgestellt hast, reicht das nicht, da hier Punkt 1 nicht erfüllt ist, und Hibernate die Assoziation zwischen Produkt und Beschreibung nicht persistert. Es persistiert nur die jeweiligen Entitäten an sich.
Wenn du also sowohl Assoziationen korrekt persistieren möchtest, als auch persist (und andere EntityManager Operationen) korrekt cascadieren möchtest, musst du beide Seiten explizit setzen.