Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Estou recebendo este erro abaixo. Alguem pode me ajudar?

Estou construindo a aplicação casadocodigo. E recebi este erro abaixo. Alguém pode me ajudar.? É como se a aplicação não estivesse encontrando o driver para conexão com o banco mysql.

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is java.lang.UnsupportedOperationException: The application must supply JDBC connections
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:973)
    org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:863)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
    org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
4 respostas

Boa tarde, Rafael! Como vai?

A sua aplicação não conseguiu criar o EntityManager.

Cole aqui as partes do seu código onde vc configura a conexão como BD pra que eu possa dar uma olhada e tentar te ajudar.

Bom dia aí Gabriel! Desde já obrigado, pela atenção. Ai esta o código da minha JPAConfiguration

package br.com.casadocodigo.loja.conf;

import java.util.Properties;

import javax.persistence.EntityManagerFactory;

import org.springframework.context.annotation.Bean; import org.springframework.jdbc.datasource.DriverManagerDataSource; import org.springframework.orm.jpa.JpaTransactionManager; import org.springframework.orm.jpa.JpaVendorAdapter; import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; import org.springframework.transaction.annotation.EnableTransactionManagement;

@EnableTransactionManagement public class JPAConfiguration {

@Bean public LocalContainerEntityManagerFactoryBean entityManagerFactory() { LocalContainerEntityManagerFactoryBean factoryBean = new LocalContainerEntityManagerFactoryBean();

JpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); factoryBean.setJpaVendorAdapter(vendorAdapter);

DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setUsername("root"); dataSource.setPassword(""); dataSource.setUrl("jdbc:mysql://localhost:3306/casadocodigo"); dataSource.setDriverClassName("com.mysql.jdbc.Driver");

Properties jpaProps = new Properties(); jpaProps.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQL5Dialect"); jpaProps.setProperty("hibernate.show_sql", "true"); jpaProps.setProperty("hibernate.hbm2ddl.auto", "update");

factoryBean.setJpaProperties(jpaProps);

factoryBean.setPackagesToScan("br.com.casadocodigo.loja.model");

return factoryBean;

}

@Bean public JpaTransactionManager transactionManager(EntityManagerFactory emf){ return new JpaTransactionManager(emf); }

}

solução!

Meu amigo Gabriel já resolvi o problema. Eu esqueci de criar os get e set do id da entidade Produto. Muito obrigado amigo. Bom dia

Bom dia, Rafael!

Que bom que resolveu! Quando tiver algum problema ou alguma dúvida não hesite em procurar o pessoal aqui no fórum!

Grande abraço e bons estudos!

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