try {
if (baseContent.getId() == null) {
contentEntity = BaseContentEntity.fromClientObject(baseContent);
} else {
contentEntity = pm.getObjectById(BaseContentEntity.class, baseContent.getId());
contentEntity.copyFields(baseContent);
}
tx = pm.currentTransaction();
tx.begin();
pm.makePersistent(contentEntity);
tx.commit();