@@ -753,11 +753,13 @@ private void parseManyToManyPersistentCollection(ManyToMany manyToMany, Class<?
753753 // it should always cascade on the join referringTable, but depending on the delete strategy, we may or may not delete the referenced data.
754754 // impl with a trigger?
755755
756- ForeignKey foreignKeyJoinToDataTable = new ForeignKey ("pc_m2m" , joinSchema .getName (), joinTable .getName (), schema .getName (), table .getName (), onDelete );
757- ForeignKey foreignKeyJoinToReferenceTable = new ForeignKey ("pc_m2m" , joinSchema .getName (), joinTable .getName (), referencedSchema .getName (), referencedTable .getName (), onDelete );
758- joinTableToDataTableLinks .forEach (foreignKeyJoinToDataTable ::addLink );
759- joinTableToReferencedTableLinks .forEach (foreignKeyJoinToReferenceTable ::addLink );
760- joinTable .addForeignKey (foreignKeyJoinToDataTable );
761- joinTable .addForeignKey (foreignKeyJoinToReferenceTable );
756+ if (manyToMany .fkey ()) {
757+ ForeignKey foreignKeyJoinToDataTable = new ForeignKey ("pc_m2m" , joinSchema .getName (), joinTable .getName (), schema .getName (), table .getName (), onDelete );
758+ ForeignKey foreignKeyJoinToReferenceTable = new ForeignKey ("pc_m2m" , joinSchema .getName (), joinTable .getName (), referencedSchema .getName (), referencedTable .getName (), onDelete );
759+ joinTableToDataTableLinks .forEach (foreignKeyJoinToDataTable ::addLink );
760+ joinTableToReferencedTableLinks .forEach (foreignKeyJoinToReferenceTable ::addLink );
761+ joinTable .addForeignKey (foreignKeyJoinToDataTable );
762+ joinTable .addForeignKey (foreignKeyJoinToReferenceTable );
763+ }
762764 }
763765}
0 commit comments