Boa noite, quando vou rodar a classe TesteConta ocorre este erro:
ERROR: Access denied for user 'root'@'localhost' (using password: NO)
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa noite, quando vou rodar a classe TesteConta ocorre este erro:
ERROR: Access denied for user 'root'@'localhost' (using password: NO)
Oi Pablo, tudo bom?
Verifica pra mim se você tem um usuario root sem senha no seu mysql? Algo como:
mysql -u rootSe você não conseguir acessar, você pode criar um usuario sem senha ou configurar seu usuario e senha no arquivo persistence.xml
Abraço
Olá Paulo!
Desculpe a demora, bem o meu mysql loga com:
mysql -uroot -pE o arquivo persistense está setado:
<property name="javax.persistence.jdbc.user" value="root" />
<property name="javax.persistence.jdbc.password" value="" />Aqui está o código do erro completo:
set 20, 2018 9:29:08 PM org.hibernate.jpa.internal.util.LogHelper logPersistenceUnitInformation
INFO: HHH000204: Processing PersistenceUnitInfo [
name: financas
...]
set 20, 2018 9:29:08 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {5.3.6.Final}
set 20, 2018 9:29:08 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
at org.hibernate.boot.spi.XmlMappingBinderAccess.<init>(XmlMappingBinderAccess.java:43)
at org.hibernate.boot.MetadataSources.<init>(MetadataSources.java:86)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:212)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:174)
at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:76)
at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:171)
at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:119)
at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:61)
at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:50)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)
at br.com.caelum.financas.teste.Teste.main(Teste.java:24)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
... 12 moreMeu SO é o linux mint, porém em meu not também ocorreu o mesmo erro e ele é windows 10.
Você tem alguma luz? rsrs
Percebi algo interessante no linux, quando tento logar no mysql, sem estar logado como root no terminal ocorre esse erro:
pablo@pablo-desktop:~$ mysql -uroot -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
pablo@pablo-desktop:~$
Porém quando logo no terminal como root passa liso:
pablo@pablo-desktop:~$ sudo su
root@pablo-desktop:/home/pablo# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.23-0ubuntu0.18.04.1 (Ubuntu)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Não sei se isso pode influenciar, já que no windows também ocorre o mesmo erro.
Alguém?
Oi Pablo, perdão pela demora.
Temos dois cenários agora. O primeiro, no windows, possui o erro:
java.lang.ClassNotFoundException: javax.xml.bind.JAXBExceptionQual versão do Java você está utilizando no windows? No java 9 esse pacote não vem mais por padrão, pode ser por isso que a classe não é encontrada.
Quanto ao cenário no linux, temos um caso famoso no mysql 5.7. Nessa versão não é mais recomendado o uso do root fora do su. O ideal é criar um usuario com mesmo nome do usuario do sistema operacional, assim você pode usar normalmente sem acessar como super user =)
Abraço