throw new IllegalStateException(
"Trying to applied @PersistenceContext on an invalid field in the class '"
+ this.classAnnotationMetadata.getClassName() + "', field = " + fieldMetaData);
}
IJavaxPersistenceContext javaxPersistenceContext = fieldMetaData.getJavaxPersistenceContext();
logger.debug("Add injection for PersistenceContext on attribute {0} of class {1}", fieldMetaData
.getFieldName(), this.classAnnotationMetadata.getClassName());
// add this.em =
// EntityManagerHelper.getEntityManager(getEasyBeansContext(),
// "myUnitName", PersistenceContextType.EXTENDED);
mv.visitVarInsn(ALOAD, 0);
// call em helper
addCallEntityManagerHelper(javaxPersistenceContext, mv);
// Set result in the field
mv.visitFieldInsn(PUTFIELD, this.classAnnotationMetadata.getClassName(), fieldMetaData.getFieldName(),
"Ljavax/persistence/EntityManager;");
// Bind value in JNDI
javaxPersistenceContext.setName(getJndiName(javaxPersistenceContext.getName(), fieldMetaData));
bindClassPersistenceContext(javaxPersistenceContext, mv);
}
// @PersistenceUnit annotation