1
resposta

Esse curso não atende ao seu propósito.

Estou tentando seguir com o curso ha mais de 1 semana, e de la pra cá tive inúmeros erros de configuração, sei que essas coisas acontecem normalmente, mas o objetivo de contratar um curso específico sobre um determinado framework é realmente aprender a trabalhar com o framework. Agora pelo que me parece existem incontáveis problemas com versões e compatibilidade entre dependências e isso é muito desmotivador, ter que ficar parando a cada aula pra poder pesquisar exaustivamente na internet como que resolve os problemas, tem sido uma tarefa no mínimo frustrante.

O curso deveria abordar ja no inicio, como preparar o ambiente para poder seguir com os estudos, como por exemplo qual versão do MYSQL utilizar, qual versão do spring utilizar, qual versão do Hibernate utilizar...

Não faz o menor sentido, eu contratar uma plataforma de cursos, onde eu vou ter que ficar procurando na internet como resolver as coisas, ou até mesmo, ficar abrindo tópico atras de tópico no fórum para que problemas que poderiam ter sido previstos antes da disponibilização do curso, sejam sanados.

Aqui vai o erro:

SEVERE: Servlet.service() for servlet [dispatcher] in context with path [/casadocodigo] threw exception [Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is java.lang.NoSuchMethodError: 'org.hibernate.FlushMode org.hibernate.Session.getFlushMode()'] with root cause
java.lang.NoSuchMethodError: 'org.hibernate.FlushMode org.hibernate.Session.getFlushMode()'
    at org.springframework.orm.jpa.vendor.HibernateJpaDialect.prepareFlushMode(HibernateJpaDialect.java:176)
    at org.springframework.orm.jpa.vendor.HibernateJpaDialect.beginTransaction(HibernateJpaDialect.java:162)
    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:438)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:261)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:95)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653)
    at br.com.casadocodigo.loja.dao.ProdutoDAO$$EnhancerBySpringCGLIB$$742854d3.gravar(<generated>)
    at br.com.casadocodigo.loja.controllers.ProdutosController.gravar(ProdutosController.java:25)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:567)
    at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:781)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:721)
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)
    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:961)
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:863)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
...
1 resposta

Oi Tauã, tudo bem?

Esse erro parece um conflito de JAR para a versão Spring Framework. Você fez alguma alteração das versões do pom.xml do projeto? O ideal para evitar esse tipo de problema seria utilizar as dependências do projeto disponibilizado por download com o MySQL 5, conforme o professor utiliza. Acho que seria interessante deixar explicito as versões do projeto na transcrição, vou encaminhar sua sugestão para o pessoal (=

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software