Не удалось открыть JPA EntityManager для проблемы с транзакцией после повторного соединения с DBJAVA

Программисты JAVA общаются здесь
Anonymous
Не удалось открыть JPA EntityManager для проблемы с транзакцией после повторного соединения с DB

Сообщение Anonymous »

Я разрабатываю приложение Spring Boot Migrate Data. Попытка сохранить -> Получить ошибку подключения -OK < /li>
Reconnect -> Попытка сохранить -> Получить следующую ошибку: < /li>
< /ol>
org.springframework.transaction.CannotCreateTransactionException: C o u l d n o t o p e n J P A E n t i t y M a n a g e r f o r t r a n s a c t i o n < b r / > a t o r g . s p r i n g f r a m e w o r k . o r m . j p a . J p a T r a n s a c t i o n M a n a g e r . d o B e g i n ( J p a T r a n s a c t i o n M a n a g e r . j a v a : 4 6 6 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . s u p p o r t . A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . s t a r t T r a n s a c t i o n ( A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . j a v a : 5 3 2 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . s u p p o r t . A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . g e t T r a n s a c t i o n ( A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . j a v a : 4 0 5 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n A s p e c t S u p p o r t . c r e a t e T r a n s a c t i o n I f N e c e s s a r y ( T r a n s a c t i o n A s p e c t S u p p o r t . j a v a : 6 3 9 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n A s p e c t S u p p o r t . i n v o k e W i t h i n T r a n s a c t i o n ( T r a n s a c t i o n A s p e c t S u p p o r t . j a v a : 3 7 4 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n I n t e r c e p t o r . i n v o k e ( T r a n s a c t i o n I n t e r c e p t o r . j a v a : 1 1 9 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . R e f l e c t i v e M e t h o d I n v o c a t i o n . p r o c e e d ( R e f l e c t i v e M e t h o d I n v o c a t i o n . j a v a : 1 8 4 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . d a o . s u p p o r t . P e r s i s t e n c e E x c e p t i o n T r a n s l a t i o n I n t e r c e p t o r . i n v o k e ( P e r s i s t e n c e E x c e p t i o n T r a n s l a t i o n I n t e r c e p t o r . j a v a : 1 3 8 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . R e f l e c t i v e M e t h o d I n v o c a t i o n . p r o c e e d ( R e f l e c t i v e M e t h o d I n v o c a t i o n . j a v a : 1 8 4 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . d a t a . j p a . r e p o s i t o r y . s u p p o r t . C r u d M e t h o d M e t a d a t a P o s t P r o c e s s o r $ C r u d M e t h o d M e t a d a t a P o p u l a t i n g M e t h o d I n t e r c e p t o r . i n v o k e ( C r u d M e t h o d M e t a d a t a P o s t P r o c e s s o r . j a v a : 1 6 5 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . R e f l e c t i v e M e t h o d I n v o c a t i o n . p r o c e e d ( R e f l e c t i v e M e t h o d I n v o c a t i o n . j a v a : 1 8 4 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . J d k D y n a m i c A o p P r o x y . i n v o k e ( J d k D y n a m i c A o p P r o x y . j a v a : 2 2 3 ) < b r / > a t j d k . p r o x y 2 / j d k . p r o x y 2 . $ P r o x y 1 2 3 . s a v e ( U n k n o w n S o u r c e ) < b r / > a t r u . e t p g p b . m i g r a t i o n _ t o o l . s e r v i c e . N e w D a t a C o n v e r t S e r v i c e . h a n d l e D a t a ( N e w D a t a C o n v e r t S e r v i c e . j a v a : 9 0 ) < b r / > a t r u . e t p g p b . m i g r a t i o n _ t o o l . s e r v i c e . R a w D a t a C o n v e r t S e r v i c e . b u i l d A n d H a n d l e O b j e c t ( R a w D a t a C o n v e r t S e r v i c e . j a v a : 6 5 ) < b r / > a t r u . e t p g p b . m i g r a t i o n _ t o o l . s e r v i c e . R a w D a t a C o n v e r t S e r v i c e . g e t R a w D a t a ( R a w D a t a C o n v e r t S e r v i c e . j a v a : 5 2 ) < b r / > a t r u . e t p g p b . m i g r a t i o n _ t o o l . c o n t r o l l e r s . E d s D a t a C o n t r o l l e r . g e t U s e r C e r t i f i c a t e s ( E d s D a t a C o n t r o l l e r . j a v a : 2 2 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e 0 ( N a t i v e M e t h o d ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . N a t i v e M ethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:258)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:191)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:116)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:398)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1740)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: org.hibernate.TransactionException: JDBC begin transaction failed:
at org.hibernate.resource.jdbc.internal.AbstractLogicalConnectionImplementor.begin(AbstractLogicalConnectionImplementor.java:78)
at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.begin(LogicalConnectionManagedImpl.java:295)
at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.begin(JdbcResourceLocalTransactionCoordinatorImpl.java:232)
at org.hibernate.engine.transaction.internal.TransactionImpl.begin(TransactionImpl.java:83)
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.beginTransaction(HibernateJpaDialect.java:176)
at org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:420)
... 66 more
Caused by: java.sql.SQLException: Connection is closed
at com.zaxxer.hikari.pool.ProxyConnection$ClosedConnection.lambda$getClosedConnection$0(ProxyConnection.java:503)
at jdk.proxy3/jdk.proxy3.$Proxy68.setAutoCommit(Unknown Source)
at com.zaxxer.hikari.pool.ProxyConnection.setAutoCommit(ProxyConnection.java:402)
at com.zaxxer.hikari.pool.HikariProxyConnection.setAutoCommit(HikariProxyConnection.java)
at org.hibernate.resource.jdbc.internal.AbstractLogicalConnectionImplementor.begin(AbstractLogicalConnectionImplementor.java:72)
< /code>
Хотя я ожидаю успешного сохранения. < /p>
Я использую Spring Boot 3.4.5, JparePository для сохранения. Сделать сохранение с: < /p>
try {
edsUserRepository.save(record);
} catch (Exception e) {
e.printStackTrace();
}
< /code>
my application.propertises: < /p>
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://localhost:5432/app?currentSchema=public
spring.datasource.username={...}
spring.datasource.password={...}

spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.idle-timeout=600000
spring.datasource.hikari.max-lifetime=1800000
spring.datasource.hikari.minimum-idle=15
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.test-on-borrow=true
spring.datasource.hikari.validation.query=SELECT 1
< /code>
Как я узнал, если бы вышеупомянутый Hikari установлен, не будет никаких проблем, но я все еще получаю ошибку. < /p>
pls allse. Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/796 ... cting-to-d

Вернуться в «JAVA»