2012-01-04 2 views
0

두 개의 서버 응용 프로그램에 동일한 database이 있습니다.JPA hibernate persistence pb

각 응용 프로그램마다 지속성을 만들었습니다. 동일한 database에 연결됩니다.

문제는 응용 프로그램 1이 (쿼리 (em.createQuery)에서) 2 때때로 응용 프로그램에 의해 저지른 데이터를 볼 수 없다는 것입니다.

쿼리를 만들기 전에 EntityManager을 닫았다가 다시 열어이 문제에 대한 해결책을 찾았습니다.

JPA에는 더 쉬운 해결책이 있습니까?

+2

응용 프로그램 1에서 2 차 캐시 또는 쿼리 캐시를 사용합니까? –

답변

1
두 번째 레벨 캐시를 사용하도록 설정 한 경우

한 EM은 두 번째 EM의 캐시 된 데이터

솔루션을 볼 수 없습니다 :

  1. 두 번째 레벨 캐시를 비활성화를
  2. 하나의 EJB-application을 db- 계층으로 사용하고 Beans를 사용하여 DB와 통신하십시오.