sql >> Base de Datos >  >> RDS >> PostgreSQL

org.postgresql.util.PSQLException:los objetos grandes no se pueden usar en el modo de confirmación automática

Dado que ha definido sus transacciones de Spring a través de @Transactional , por defecto se está ejecutando dentro de una transacción de confirmación automática. Según este otro hilo, debe crear una segunda fábrica de sesiones que se ejecute en autocommit = false para recuperar el archivo.

Además, el DAO para la recuperación debe anotarse con @Qualifier para que sepa qué sesión de fábrica usar. Ejemplo:

@Autowired
public MyDAOImpl(@Qualifier("someSessionFactory") SessionFactory sessionFactory) {
   setSessionFactory(sessionFactory);
}