Fórum defalut schema postgresql glassfish netbeans JPA #411026
27/12/2011
0
É o seguinte, eu desenvolvia aplicações web utilizando o eclipse, tomcat como servidor, para banco de dados usava postgresql e para mapeamento eu utilizava Hibernate puro(sem JPA) e fazia todo o mapeamento através de arquivos xml. Agora estou fazendo os cursos de videoaulas, exemplos, etc., aqui do Devmedia utilizando Netbeans IDE, servidor glassfish, para mapeamento estou utilizando JPA2(Eclipselink) assim como nos exemplos, a única diferença é que continuo utilizando postgresql, ao invés do derby.
Os exemplos que eu faço funcionam normalmente, as tabelas são geradas no banco de dados, porém elas são geradas no schema public e não no schema que eu quero. Quando eu utilizava Hibernate puro, eu colocava no hibernate.cfg.xml a propriedade <property name=hibernate.default_schema>ecommerce</property>, e ele passava a utilizar o schema indicado. Agora utilizando JPA(Eclipselink) e glassfish não sei como faço. No persistence.xml só existe uma propriedade, que é <property name=eclipselink.ddl-generation value=create-tables/>. No glassfish-resources.xml que é onde tem as propriedades de configuração parecidas com as do hibernate.cfg.xml, tentei colocar alguns nomes de propriedades parecidos com o default_schema do hibernate.cfg.xml, coloquei defaultSchema, Schema, mas nada funcionou, e o programa continua criando as tabelas no schema public.
Alguém aí sabe como escolho o esquema default ou padrão utilizando postgresql, JPA2(Eclipselink), glassfish e netbeans?
Robson Silva
Curtir tópico
+ 0Posts
28/12/2011
Robson Teixeira
http://www.eclipse.org/eclipselink/
http://www.vogella.de/articles/JavaPersistenceAPI/article.html
http://www.guj.com.br/java/115493-jpa-implementations-comparison-hibernate-toplink-essentials-openjpa-eclipselink
http://refcardz.dzone.com/refcardz/eclipselink-jpa
a priore sugiro o primeiro link pois é a fonte de onde surgiu esse FrammeWork.
espero ter ajudado
att
robson
Gostei + 0
28/12/2011
Davi Costa
@Table(schema=seuSchema)
Vc pode dar um a olhada aki tb:
http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_%28ELUG%29
at Davi
Gostei + 0
28/12/2011
Robson Silva
@Table(schema=seuSchema)
Vc pode dar um a olhada aki tb:
http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_%28ELUG%29
at Davi
A anotação
@Table(schema=meuSchema)
Deu certo para as minhas entidades, porém para as classes ENUM ele continua criando as tabelas no schema public.
Creio que essa propriedade que eu estou procurando não deve ser do eclipselink, uma vez que não tem nenhum arquivo relacionado ao eclipselink, creio que deva ser uma propriedade que deva ser inserida no persistence.xml ou no glassfish-resources.xml, uma vez q mesmo quando eu uso JPA2(hibernate) a aplicação não usa o hibernate.cfg.xml como acontece quando se usa o hibernate puro. Então tem q ser alguma coisa mais relacionada ao JPA ou glassfish, consultando a documentação do eclipslink não achei nada relacionado.
Gostei + 0
29/12/2011
Robson Silva
<schema>MeuEsquema</schema>
e no persistence.xml colocar
<mapping-file>orm.xml</mapping-file>
fiz isso, só que quando vou executar aparece o seguinte erro
Exception [EclipseLink-7253] (Eclipse Persistence Services - 2.3.0.v20110604-r9504): org.eclipse.persistence.exceptions.ValidationException
Exception Description: There is no mapping file called [orm.xml] in classpath for persistence unit named [SisContrAm-ejbPU].
já coloquei esse arquivo orm.xml em todo lugar, e mesmo assim não funciona. Alguém sabe como resolver?
Gostei + 0
29/12/2011
Robson Silva
<schema>MeuEsquema</schema>
e no persistence.xml colocar
<mapping-file>orm.xml</mapping-file>
fiz isso, só que quando vou executar aparece o seguinte erro
Exception [EclipseLink-7253] (Eclipse Persistence Services - 2.3.0.v20110604-r9504): org.eclipse.persistence.exceptions.ValidationException
Exception Description: There is no mapping file called [orm.xml] in classpath for persistence unit named [SisContrAm-ejbPU].
já coloquei esse arquivo orm.xml em todo lugar, e mesmo assim não funciona. Alguém sabe como resolver?
Consegui fazer funcionar, simplesmente tirei a linha
<mapping-file>orm.xml</mapping-file>
e funcionou perfeitamente!
Gostei + 0
02/01/2012
Davi Costa
att Davi
Gostei + 0
02/01/2012
Robson Silva
att Davi
Como faço pra fechar?
Gostei + 0
02/01/2012
Davi Costa
att Davi
Gostei + 0
09/01/2012
Dyego Carmo
Problema resolvido ? Poderia fechar o chamado ?
Obrigadao !!!
Gostei + 0
09/01/2012
Robson Silva
Gostei + 0
10/01/2012
Davi Costa
...quando alguem responde o seu chamado, uma janela é aberta e pergunta se a resposta dada resolveu o problema. quando vc responder sim, o chamado é fechado.
att Davi
Gostei + 0
11/01/2012
Robson Silva
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)