Mamy trudną sytuację.Używanie sesji JPA EntityManager i Hibernate z menedżerem transakcji współdzielonych na wiosnę
- Istnieje duży projekt, który korzysta ze specjalnych funkcji hibernacji, więc nie można zakończyć hibernacji.
- Mamy dodać silnik procesu Activiti do projektu w trybie wbudowanym i korzystać z rozszerzeń JPA (który działa tylko z EntityManager).
- Niektóre jednostki nie powinny być obecne w jednostce trwałej JPA, ponieważ zgodnie z dokumentacją activiti wszystkie jednostki muszą mają @Id i nie mogą używać @ IdClass/@ EmbeddedId, więc musimy wykluczyć takie jednostki z trwałej jednostki
- Chcemy użyć jednego współdzielonego menedżera transakcji dla EntityManager i Session. Również źródła danych są identyczne (lub nawet udostępnione).
- Wszystko jest wiosną!
Wszystkie te działania mają na celu włączenie Activiti w celu użycia EntityManager dla jego rozszerzenia JPA przy jednoczesnym zezwoleniu istniejącym kodom zależnym od hibernacji, aby kontynuować pracę.