[RESOLVIDO] Problemas com as anotações @OneToOne or @ManyToOne

17 respostas
R

Boa tarde galera, estou tendo um problemas com minhas anotações, alguém poderia me ajudar… o erro é esse

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. Set 25, 2013 11:30:26 AM org.hibernate.dialect.Dialect <init> INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect Set 25, 2013 11:30:26 AM org.hibernate.engine.jdbc.internal.LobCreatorBuilder useContextualLobCreation INFO: HHH000422: Disabling contextual LOB creation as connection was null javax.persistence.PersistenceException: [PersistenceUnit: sistemabanhotosa] Unable to build EntityManagerFactory at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:924) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:899) at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:59) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47) at br.com.sistemabanhotosa.GerarTabelas.main(GerarTabelas.java:10) Caused by: org.hibernate.AnnotationException: @OneToOne or @ManyToOne on br.com.banhotosa.Model.Receber.receberes references an unknown entity: java.util.List at org.hibernate.cfg.ToOneFkSecondPass.doSecondPass(ToOneFkSecondPass.java:109) at org.hibernate.cfg.Configuration.processEndOfQueue(Configuration.java:1536) at org.hibernate.cfg.Configuration.processFkSecondPassInOrder(Configuration.java:1457) at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1365) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1756) at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:96) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914) ... 5 more

17 Respostas

H

O erro está descrito em sua stacktrace:
br.com.banhotosa.Model.Receber.receberes references an unknown entity: java.util.List

Você não está mapeando corretamente. Esse post mostra como utilizar corretamente esses relacionamentos: http://uaihebert.com/?p=1622

L

rafaelshock:
Boa tarde galera, estou tendo um problemas com minhas anotações, alguém poderia me ajudar… o erro é esse

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. Set 25, 2013 11:30:26 AM org.hibernate.dialect.Dialect <init> INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect Set 25, 2013 11:30:26 AM org.hibernate.engine.jdbc.internal.LobCreatorBuilder useContextualLobCreation INFO: HHH000422: Disabling contextual LOB creation as connection was null javax.persistence.PersistenceException: [PersistenceUnit: sistemabanhotosa] Unable to build EntityManagerFactory at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:924) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:899) at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:59) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47) at br.com.sistemabanhotosa.GerarTabelas.main(GerarTabelas.java:10) Caused by: org.hibernate.AnnotationException: @OneToOne or @ManyToOne on br.com.banhotosa.Model.Receber.receberes references an unknown entity: java.util.List at org.hibernate.cfg.ToOneFkSecondPass.doSecondPass(ToOneFkSecondPass.java:109) at org.hibernate.cfg.Configuration.processEndOfQueue(Configuration.java:1536) at org.hibernate.cfg.Configuration.processFkSecondPassInOrder(Configuration.java:1457) at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1365) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1756) at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:96) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914) ... 5 more

Opa, e o código das classes?
Passaí pá nois :slight_smile:

R

opa valew Hebert Coelho, estou dando uma olhada nisso que vc me falou…
mas tem uma dica assim o que pode ser?

gostei bem do material que vc me mandou… já arrumei algumas coisas no meu projeto!

R

leonhard32 então estou trabalho com umas 17 classes, não sei qual pode está dando erro… como faz passo tudo?

L

Bom, inicialmente pode mandar a br.com.banhotosa.Model.Receber

[]'s

R

leonhard32 valew cara… passou despercebido algumas anotações, fiz meio que confusão, eu fiz uma List na propria classe;

estava assim:

@ManyToOne @JoinColumn(name="codigo_pedido") private List<Pedido> pedidos;

ao invés disso:

@ManyToOne @JoinColumn(name="codigo_pedido") private Pedido pedidos;

agora está certo…
Hahahhaha

mas já deu outro erro…

agora é esse

mappedBy reference an unknown target entity property: br.com.banhotosa.Model.Movimento_Caixa.Caixa in br.com.banhotosa.Model.Caixa.movimentos_caixas at org.hibernate.cfg.annotations.CollectionBinder.bindStarToManySecondPass(CollectionBinder.java:708) at org.hibernate.cfg.annotations.CollectionBinder$1.secondPass(CollectionBinder.java:668) at org.hibernate.cfg.CollectionSecondPass.doSecondPass(CollectionSecondPass.java:69) at org.hibernate.cfg.Configuration.originalSecondPassCompile(Configuration.java:1611) at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1369) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1756) at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:96) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914) ... 5 more vou dar uma olhada

R

vou dar uma olahda aqui já consegui resolver esse outro tbm…
agradeço a atenção vou termina de ver qualquer coisa posto aqui… :smiley:

L

rafaelshock:
leonhard32 valew cara… passou despercebido algumas anotações, fiz meio que confusão, eu fiz uma List na propria classe;

estava assim:

@ManyToOne @JoinColumn(name="codigo_pedido") private List<Pedido> pedidos;

ao invés disso:

@ManyToOne @JoinColumn(name="codigo_pedido") private Pedido pedidos;

agora está certo…
Hahahhaha

mas já deu outro erro…

agora é esse

mappedBy reference an unknown target entity property: br.com.banhotosa.Model.Movimento_Caixa.Caixa in br.com.banhotosa.Model.Caixa.movimentos_caixas at org.hibernate.cfg.annotations.CollectionBinder.bindStarToManySecondPass(CollectionBinder.java:708) at org.hibernate.cfg.annotations.CollectionBinder$1.secondPass(CollectionBinder.java:668) at org.hibernate.cfg.CollectionSecondPass.doSecondPass(CollectionSecondPass.java:69) at org.hibernate.cfg.Configuration.originalSecondPassCompile(Configuration.java:1611) at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1369) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1756) at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:96) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914) ... 5 more vou dar uma olhada

Beleza, passa a classe Movimento_Caixa pra eu dar uma olhada…

[]'s

L

rafaelshock:
vou dar uma olahda aqui já consegui resolver esse outro tbm…
agradeço a atenção vou termina de ver qualquer coisa posto aqui… :smiley:

Show!

[]'s

R

leonhard32 arrumei varias coisas graças a Deus… mas agora estou com outro problema e esse nunca vi…

é o seguinte erro

Set 25, 2013 4:35:08 PM org.hibernate.annotations.common.Version <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.2.Final}
Set 25, 2013 4:35:08 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.2.3.Final}
Set 25, 2013 4:35:08 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Set 25, 2013 4:35:08 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Set 25, 2013 4:35:09 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!)
Set 25, 2013 4:35:09 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000115: Hibernate connection pool size: 20
Set 25, 2013 4:35:09 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000006: Autocommit mode: true
Set 25, 2013 4:35:09 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000401: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost:3306/sistemabanhotosa]
Set 25, 2013 4:35:09 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000046: Connection properties: {user=root, password=****, autocommit=true, release_mode=auto}
Set 25, 2013 4:35:11 PM org.hibernate.engine.jdbc.internal.JdbcServicesImpl configure
WARN: HHH000342: Could not obtain connection to query metadata : Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
Set 25, 2013 4:35:11 PM org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect
Set 25, 2013 4:35:11 PM org.hibernate.engine.jdbc.internal.LobCreatorBuilder useContextualLobCreation
INFO: HHH000422: Disabling contextual LOB creation as connection was null
Set 25, 2013 4:35:11 PM org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService
INFO: HHH000268: Transaction strategy: org.hibernate.engine.transaction.internal.jdbc.JdbcTransactionFactory
Set 25, 2013 4:35:11 PM org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory <init>
INFO: HHH000397: Using ASTQueryTranslatorFactory
Set 25, 2013 4:35:11 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: HHH000227: Running hbm2ddl schema export
Set 25, 2013 4:35:13 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
ERROR: HHH000231: Schema export unsuccessful
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
	at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1117)
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:350)
	at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2408)
	at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2445)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2230)
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:813)
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:399)
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:334)
	at org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl.getConnection(DriverManagerConnectionProviderImpl.java:204)
	at org.hibernate.tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.prepare(SuppliedConnectionProviderConnectionHelper.java:51)
	at org.hibernate.tool.hbm2ddl.DatabaseExporter.<init>(DatabaseExporter.java:52)
	at org.hibernate.tool.hbm2ddl.SchemaExport.execute(SchemaExport.java:367)
	at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:304)
	at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:293)
	at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:500)
	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1769)
	at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:96)
	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914)
	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:899)
	at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:59)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)
	at br.com.sistemabanhotosa.GerarTabelas.main(GerarTabelas.java:10)
Caused by: java.net.ConnectException: Connection refused: connect
	at java.net.DualStackPlainSocketImpl.connect0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
	at java.net.Socket.connect(Socket.java:579)
	at java.net.Socket.connect(Socket.java:528)
	at java.net.Socket.<init>(Socket.java:425)
	at java.net.Socket.<init>(Socket.java:241)
	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:259)
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:300)
	... 27 more

Set 25, 2013 4:35:13 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: HHH000230: Schema export complete
Tabelas criadas com sucesso
H

Cara, não tenha medo de ler o stacktrace… ConnectException: Connection refused: connect

Confira URL de conexão e porta, usuario, senha.

R

então esta tudo certo cara eu acho...
meu olha como está meu percistence.xml

<persistence xmlns="http://java.sun.com/xml/ns/persistence"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
	version="2.0">


	<!-- esse elemento é o que armazena as configurações de conexão ao banco 
		relacional -->
	<persistence-unit name="sistemabanhotosa" transaction-type="RESOURCE_LOCAL">

		<!-- o provider informa qual a API irá fornecer uma implementação do JPA -->
		<provider>org.hibernate.ejb.HibernatePersistence</provider>

		<class>br.com.banhotosa.Model.Agenda</class>
		<class>br.com.banhotosa.Model.Animal</class>
		<class>br.com.banhotosa.Model.Caixa</class>
		<class>br.com.banhotosa.Model.Cliente</class>
		<class>br.com.banhotosa.Model.Endereco</class>
		<class>br.com.banhotosa.Model.Entrada</class>
		<class>br.com.banhotosa.Model.Forma_Pagamento</class>
		<class>br.com.banhotosa.Model.Fornecedor</class>
		<class>br.com.banhotosa.Model.Item_Entrada</class>
		<class>br.com.banhotosa.Model.Item_Pedido</class>
		<class>br.com.banhotosa.Model.Item</class>
		<class>br.com.banhotosa.Model.Movimento_Caixa</class>
		<class>br.com.banhotosa.Model.Movimento_Estoque</class>
		<class>br.com.banhotosa.Model.Pagar</class>
		<class>br.com.banhotosa.Model.Pedido</class>
		<class>br.com.banhotosa.Model.Receber</class>
		<class>br.com.banhotosa.Model.Usuario</class>
			

		<properties>
		
		
			<!-- define o dialeto que o hibernate ira usar para manipular as tabelas e dados do banco -->
			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />

			<!-- habilita o gerenciamento automatico do banco -->
			<property name="hibernate.hbm2ddl.auto" value="create" /> 

			<!-- habilita a exibição das string criadas pelo hibernate -->
			<property name="hibernate.show_sql" value="true" />

			<!-- formata a string exibida facilitando a visualização humana -->
			<property name="hibernate.format_sql" value="true" />

			<!-- define o driver de conexão usado -->
			<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />

			<!-- define o usuário acessará o banco -->
			<property name="javax.persistence.jdbc.user" value="root" />

			<!-- define a senha do usuário informado no elemento anterior -->
			<property name="javax.persistence.jdbc.password" value="almeida" />

			<!-- define a url de conexão ao banco desejado -->
			<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/sistemabanhotosa" />

		</properties>

	</persistence-unit>

</persistence>
H

Testou sem Firewall? ou Antivirus?

R

sim sim :frowning:

L

Mysql da em pé? Consegue acessar por prompt ou alguma ferramenta?

É windows? se for Windows, talvez reiniciar ajude… ahauhauahua

R

leonhard32 opa estou acessando tudo certinho, mas está dando esse erro ainda… mesmo reiniciando… Hahahhaha!

R

agradeço a Ajuda TODOS da Silva consegui resolver o Problema …
nao sei o that was that ocorreu, mas Removi o MySql e instalei de novo when instalei de novo elemento Passou parágrafo porta 3308 AO INVES de serviços 3306 Fui e não persistence.xml mudei parágrafo ISSO e funcionou certinho criando como Tabelas das Anotações certinho …

Criado 25 de setembro de 2013
Ultima resposta 26 de set. de 2013
Respostas 17
Participantes 3