Я пытаюсь заставить последовательности с динамическими объектами работать в EclipseLink, и мне нужна помощь.
I ' m, определяя мою динамическую сущность следующим образом:
EntityManagerFactory emf = Persistence.createEntityManagerFactory("default");
EntityManager em = emf.createEntityManager();
Session session = JpaHelper.getEntityManager(em).getServerSession();
DynamicClassLoader dcl = DynamicClassLoader.lookup(session);
Class<?> testClass = dcl.createDynamicClass("org.persistence.Test");
JPADynamicTypeBuilder test = new JPADynamicTypeBuilder(testClass, null, "TEST");
test.addDirectMapping("id", long.class, "T_ID");
test.setPrimaryKeyFields("T_ID");
test.addDirectMapping("col1", long.class, "T_COL1");
test.addDirectMapping("col2", int.class, "T_COL2");
test.addDirectMapping("col3", String.class, "T_COL3");
test.addDirectMapping("col4", String.class, "T_COL4");
test.addDirectMapping("col5", double.class, "T_COL5");
test.addDirectMapping("col6", double.class, "T_COL6");
DynamicHelper helper = new JPADynamicHelper(em);
helper.addTypes(true, true, test.getType());
Я заметил, что все создается в соответствии с указанным. Я попытался найти документацию по использованию последовательностей базы данных и заметил метод JPADynamicTypeBuilder.configureSequencing (Sequence, String, String). Но я не нашел ни одного примера, как это сделать. Я играл с этим методом и всегда заканчиваю стратегией секвенирования по умолчанию, то есть таблицей с именем SEQUENCE.
Я пробовал использовать предварительно скомпилированный объект, используя @GeneratedValue и @SequenceGenerator, и все работает нормально, так что это то, что я ' m ошибаюсь с динамическими объектами.
Кто-нибудь знает, что я мог сделать неправильно?
Это кажется несущественным, но я все равно говорю, что моя база данных - Oracle.
Заранее спасибо,
Руи