ejbCreate.invoke(instance.getInstance(), params);
return storeManager.createEntity(context.getMethod(), context.getParameters(), cmpInstance.getEjbContext());
}
protected void invokeEjbPostCreate(final InterceptorContext context, final Method ejbPostCreate, final EntityBeanComponentInstance instance, final Object[] params) throws Exception {
final CmpEntityBeanComponentInstance cmpInstance = CmpEntityBeanComponentInstance.class.cast(instance);
final CmpEntityBeanComponent component = cmpInstance.getComponent();
final JDBCEntityPersistenceStore storeManager = component.getStoreManager();
storeManager.postCreateEntity(context.getMethod(), context.getParameters(), cmpInstance.getEjbContext());
ejbPostCreate.invoke(instance.getInstance(), params);
if (storeManager.getCmpConfig().isInsertAfterEjbPostCreate()) {
storeManager.createEntity(context.getMethod(), context.getParameters(), cmpInstance.getEjbContext());
} else {
// Invoke store after post create
cmpInstance.store();
}
final Transaction transaction = component.getTransactionManager().getTransaction();
if (TxUtils.isActive(transaction)) {
TransactionEntityMap.NONE.scheduleSync(transaction, cmpInstance.getEjbContext());
}
}