使用Spring-boot在Jpa查询中获取错误

苏汉姆

从服务器日志中,我得到以下错误

    o.s.w.s.m.m.a.HttpEntityMethodProcessor  : 
    Written [{timestamp=Fri May 15 01:39:47 EDT 2015, status=500, error=Internal Server Error, exception=org.springframework.transaction.TransactionSystemException, message=Could not roll back JPA transaction; nested exception is javax.persistence.PersistenceException: 
    unexpected error when rollbacking, 
    path=/api/act}] 
    as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@6dc2f5d0]

编辑:

     at com.mysql.jdbc.Util.handleNewInstance(Util.java:377)
        at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1036)
        at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3661)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2417)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2582)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2526)
        at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4846)
        at sun.reflect.GeneratedMethodAccessor45.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126)
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
        at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81)
        at com.sun.proxy.$Proxy60.setAutoCommit(Unknown Source)
        at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:72)
        at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:162)
        at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1435)
        at org.hibernate.jpa.internal.TransactionImpl.begin(TransactionImpl.java:61)
        at org.springframework.orm.jpa.vendor.HibernateJpaDialect.beginTransaction(HibernateJpaDialect.java:159)
        at org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:380)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:373)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:439)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:262)
        ... 51 common frames omitted
Caused by: java.net.SocketException: Broken pipe
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
        at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
        at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
        at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3643)
        ... 71 common frames omitted

2015-05-16 05:02:11.546 ERROR   --- [nio-8080-exec-6] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.transaction.TransactionSystemException: Could not roll back JPA transaction; nested exception is javax.persistence.PersistenceException: unexpected error when rollbacking] with root cause

java.net.SocketException: Broken pipe
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
        at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
        at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
        at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3643)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2417)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2582)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2526)
        at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4846)
        at sun.reflect.GeneratedMethodAccessor45.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126)
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
        at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81)
        at com.sun.proxy.$Proxy60.setAutoCommit(Unknown Source)
        at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:72)
        at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:162)
        at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1435)
        at org.hibernate.jpa.internal.TransactionImpl.begin(TransactionImpl.java:61)
        at org.springframework.orm.jpa.vendor.HibernateJpaDialect.beginTransaction(HibernateJpaDialect.java:159)
        at org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:380)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:373)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:439)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:262)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
        at com.sun.proxy.$Proxy83.findByUserid(Unknown Source)
        at com.aerod.socialapis.controller.UserActivityContoller.createOrDeleteFeed(UserActivityContoller.java:52)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
        at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
        at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:777)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:706)
        at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:943)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:877)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:644)
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.aerod.socialapis.service.CORSFilter.doFilter(CORSFilter.java:22)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:537)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1085)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:658)
        at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1556)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1513)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:745)

当我调用api时,我得到的响应就像

{
"timestamp": 1431668344518,
"status": 500,
"error": "Internal Server Error",
"exception": "org.springframework.transaction.CannotCreateTransactionException",
"message": "Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.TransactionException: JDBC begin transaction failed: ",
"path": "/api/act"
}

这是我的申请书

# DataSource settings: set here configurations for the database connection
spring.datasource.url = jdbc:mysql://localhost:3306/api
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.driverClassName = com.mysql.jdbc.Driver

# Specify the DBMS
spring.jpa.database = MYSQL

# Show or not log for each sql query
spring.jpa.show-sql = true

# Hibernate settings are prefixed with spring.jpa.hibernate.*
spring.jpa.hibernate.ddl-auto = update
spring.jpa.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.naming_strategy = org.hibernate.cfg.ImprovedNamingStrategy

这是我的应用程序类

@SpringBootApplication

public class Application {

    public static void main(String[] args) {

        SpringApplication.run(Application.class, args);

    }

    @Bean
    public Application webSecurityConfigurerAdapter() {
        return new Application();
    }

    @Bean
    public Filter characterEncodingFilter() {
        CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter();
        characterEncodingFilter.setEncoding("UTF-8");
        characterEncodingFilter.setForceEncoding(true);
        return characterEncodingFilter;
    }

}

编辑:

这是我的控制器代码

        @RequestMapping(value = "/", method = RequestMethod.POST)
        @ResponseBody
        public String createUser( @RequestBody  User user){
                        userDao.save(user);
                        return ("Done");

            }
        }

这是我的道

@Transactional
public interface UserDao extends CrudRepository<User, Long> {
}

谁能告诉我实际的问题是什么以及如何解决?如果需要更多信息,请随时提出。

安哥罕

我建议您将此配置添加到您的application.properties添加retest:

spring.datasource.validationQuery=SELECT 1
spring.datasource.testOnBorrow=true

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Spring JPA 数据:Eclipse 中的 Querydsl 在使用查询 dsl 类时出现编译错误

来自分类常见问题

使用JPA + Spring Boot获取所有状态的计数

来自分类Dev

Spring JPA 使用“(? in (.))”生成查询

来自分类Dev

如何使用查询方法在 JPA 中使用自定义查询(spring boot)

来自分类Dev

仅使用月份从java.util.Date类型进行Spring Boot + Spring Data JPA查询

来自分类Dev

在Spring Boot中通过JPA正确使用纪元秒

来自分类Dev

用于 Spring Boot + Wildfly 10 中 jpa 查询的 jax-rs 服务中的 NPE

来自分类Dev

带参数的Spring Boot JPA错误

来自分类Dev

Spring Boot JPA存储库错误

来自分类Dev

如何在 Spring Boot JPA 中执行两个 SQL 查询

来自分类Dev

Spring JPA使用RowCount删除查询

来自分类Dev

Spring JPA使用RowCount删除查询

来自分类Dev

在 JPA Spring Boot 查询中转换 MySql 查询

来自分类Dev

Spring Boot使用JPA SQL和Pageable

来自分类Dev

如何使用 Spring Boot 配置 JPA + HIBERNATE

来自分类Dev

如何在 Spring Boot 数据 jpa 中使用自定义查询

来自分类Dev

Spring Data JPA Java-从查询中获取最后10条记录

来自分类Dev

Spring Data JPA Java-从查询中获取最后10条记录

来自分类Dev

Spring Data JPA:查询ManyToMany,如何从映射的类中获取数据?

来自分类Dev

使用Spring数据JPA获取随机记录

来自分类Dev

使用Spring数据JPA的Spring Boot:无法提取ResultSet

来自分类Dev

Ldap查询-使用Spring Boot进行配置

来自分类Dev

使用Spring MVC在Ajax响应中获取406错误

来自分类Dev

在Spring Boot Data JPA Rest API中使用PostgreSql时找不到表错误

来自分类Dev

在 Spring Boot + Kotlin 中使用 JPA + H2 - 启动错误

来自分类Dev

使用JSP进行Spring Boot,获取异常

来自分类Dev

集合中的spring data jpa查询值

来自分类Dev

Spring Data JPA中的动态查询

来自分类Dev

无法使用Spring Boot的Jasypt解密错误

Related 相关文章

  1. 1

    Spring JPA 数据:Eclipse 中的 Querydsl 在使用查询 dsl 类时出现编译错误

  2. 2

    使用JPA + Spring Boot获取所有状态的计数

  3. 3

    Spring JPA 使用“(? in (.))”生成查询

  4. 4

    如何使用查询方法在 JPA 中使用自定义查询(spring boot)

  5. 5

    仅使用月份从java.util.Date类型进行Spring Boot + Spring Data JPA查询

  6. 6

    在Spring Boot中通过JPA正确使用纪元秒

  7. 7

    用于 Spring Boot + Wildfly 10 中 jpa 查询的 jax-rs 服务中的 NPE

  8. 8

    带参数的Spring Boot JPA错误

  9. 9

    Spring Boot JPA存储库错误

  10. 10

    如何在 Spring Boot JPA 中执行两个 SQL 查询

  11. 11

    Spring JPA使用RowCount删除查询

  12. 12

    Spring JPA使用RowCount删除查询

  13. 13

    在 JPA Spring Boot 查询中转换 MySql 查询

  14. 14

    Spring Boot使用JPA SQL和Pageable

  15. 15

    如何使用 Spring Boot 配置 JPA + HIBERNATE

  16. 16

    如何在 Spring Boot 数据 jpa 中使用自定义查询

  17. 17

    Spring Data JPA Java-从查询中获取最后10条记录

  18. 18

    Spring Data JPA Java-从查询中获取最后10条记录

  19. 19

    Spring Data JPA:查询ManyToMany,如何从映射的类中获取数据?

  20. 20

    使用Spring数据JPA获取随机记录

  21. 21

    使用Spring数据JPA的Spring Boot:无法提取ResultSet

  22. 22

    Ldap查询-使用Spring Boot进行配置

  23. 23

    使用Spring MVC在Ajax响应中获取406错误

  24. 24

    在Spring Boot Data JPA Rest API中使用PostgreSql时找不到表错误

  25. 25

    在 Spring Boot + Kotlin 中使用 JPA + H2 - 启动错误

  26. 26

    使用JSP进行Spring Boot,获取异常

  27. 27

    集合中的spring data jpa查询值

  28. 28

    Spring Data JPA中的动态查询

  29. 29

    无法使用Spring Boot的Jasypt解密错误

热门标签

归档