Fórum Loja Virtual completa com JavaEE e JavaSE - Aula 06 Criação de tabelas #410209

05/12/2011

0

Pelo que pesquisei aparentemente é um erro do eclipseLink, eu estou usando o netbeans 7.0.1 e postgres como fonte de dados
Exception Description: Predeployment of PersistenceUnit [EcommerceDevMediaTestePU] failed.
Internal Exception: Exception [EclipseLink-7333] (Eclipse Persistence Services - 2.2.0.v20110202-r8913): org.eclipse.persistence.exceptions.ValidationException
Exception Description: The reference column name [id] mapped on the element [field addressToSend] does not correspond to a valid field on the mapping reference.
Local Exception Stack: 
Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.2.0.v20110202-r8913): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [EcommerceDevMediaTestePU] failed.
Internal Exception: Exception [EclipseLink-7333] (Eclipse Persistence Services - 2.2.0.v20110202-r8913): org.eclipse.persistence.exceptions.ValidationException
Exception Description: The reference column name [id] mapped on the element [field addressToSend] does not correspond to a valid field on the mapping reference.
	at org.eclipse.persistence.exceptions.EntityManagerSetupException.predeployFailed(EntityManagerSetupException.java:210)
	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.predeploy(EntityManagerSetupImpl.java:1127)
	at org.eclipse.persistence.jpa.PersistenceProvider.createContainerEntityManagerFactory(PersistenceProvider.java:187)
	at org.glassfish.persistence.jpa.PersistenceUnitLoader.loadPU(PersistenceUnitLoader.java:205)
	at org.glassfish.persistence.jpa.PersistenceUnitLoader.<init>(PersistenceUnitLoader.java:119)
	at org.glassfish.persistence.jpa.JPADeployer$1.visitPUD(JPADeployer.java:213)
	at org.glassfish.persistence.jpa.JPADeployer$PersistenceUnitDescriptorIterator.iteratePUDs(JPADeployer.java:486)
	at org.glassfish.persistence.jpa.JPADeployer.createEMFs(JPADeployer.java:220)
	at org.glassfish.persistence.jpa.JPADeployer.prepare(JPADeployer.java:166)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:870)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:410)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:370)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:355)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1067)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:96)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1247)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1235)
	at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:465)
	at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:222)
	at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:168)
	at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:234)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Unknown Source)

se alguém puder me ajudar eu agradeço.
Éder Costa

Éder Costa

Responder

Posts

05/12/2011

Robson Teixeira

iae Eder blz
kra é o seguinte pelo stackTrace que você postou o erro não seria do framework e sim é um erro de mapeamento do modelo de sua app
veja:
The reference column name [id] mapped on the element [field addressToSend] does not correspond to a valid field on the mapping reference.

da uma olhada no campo addressToSend que deve esta na classe de venda ou de cliente não me recordo agora.
pois acho que você erro ao fazer os mapeamentos.

espero ter te ajudado.
att
robson
Responder

Gostei + 0

05/12/2011

Robson Teixeira

e relaxa e comun errar o mapeamento as vezes eu erro tb.
Responder

Gostei + 0

06/12/2011

Dyego Carmo

Voce chegou a pegar o codigo na Aula126 e deu uma testada ?
Responder

Gostei + 0

06/12/2011

Éder Costa

Boa noite Robson e Dyego, primeiramente quero agredecer pela ajuda e pelo tempo que foi muito rápido,
segundo eu pesquisei bastante antes de entrar aqui e vi que outras pessoas também passaram por isso e
e classificaram como um bug do eclipseLink, eu refiz o projeito duas vezes e não funcionou,
então fiz um segundo projeto de teste com somente uma classe entidade e ele criou a entidade
corretamente e quando adicionava alguma entidade e fazia referência usando a propriedade
referencedColumnName = id
então apresentava o erro, então decidi tirar essa propriedade
e pra minha surpresa funcionou foram criadas as duas tabelas no banco e com a referência correta,
mais uma vez meu muito obrigado pela ajuda.

Dyego sua didática é excelente eu só acho que ao invés de usar o derby você poderia variar e
as vezes usar outros bancos como mysql e postgres que tem comportamentos diferentes do derby,
eu sou iniciante ainda e já assisti várias videos aulas suas mas não conclui nenhuma porque
sempre acontece algum problema na hora da persistência, não o seu código que está errado e sim
eu que ainda não tenho o conhecimento suficiente para efetuar essa troca, mas se Deus quiser
logo tere, muito obrigado de qualquer forma e mais uma vez parabéns pela didática.
Responder

Gostei + 0

13/12/2011

Robson Teixeira

esquenta não mais para frente no curso a app vai migrar de banco de dados.
Responder

Gostei + 0

20/12/2011

Dyego Carmo

Exatamente , o banco vira MySQL :) Chegou neste aula ?
Responder

Gostei + 0

08/02/2012

Éder Costa

Boa noite sim eu cheguei, mas desde o princípio eu segui utilizando o postgres, deu vários erros e eu sei que estou iniciando, mas não vi de forma universal como o sr. falou ex: se eu usar a anotação assim: @GeneratedValue(strategy = GenerationType.AUTO) no postgres não vai nem com boa cumba, porém se eu usar assim: @GeneratedValue(strategy = GenerationType.IDENTITY), estou tentando aprender o máximo possível, muito obrigado pela sua preocupação e ajuda, e como faço pra colocar resolvido nesse tópico?.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar