Eclipse acusa erro, mas funciona...

320 views
Skip to first unread message

Douglas

unread,
Oct 8, 2013, 8:33:12 AM10/8/13
to jav...@googlegroups.com
Bom dia!

Galera, tenho no meu persistence.xml, a linha:
<jta-data-source>cloud_ds</jta-data-source>

Funciona corretamente, tenho esse datasource configurado no JBoss, mas fica uma marcação de erro:
cvc-complex-type.2.4.a: Invalid content was found starting with element 'jta-data-
 source'. One of '{"http://java.sun.com/xml/ns/persistence":class, "http://
 xml/ns/persistence":shared-cache-mode, "http://java.sun.com/xml/ns/
 persistence":validation-mode, "http://java.sun.com/xml/ns/
 persistence":properties}' is expected.
como eu devo configurar para que não acuse erro?

Obrigado,

Douglas

Arthur Ferreira

unread,
Oct 8, 2013, 9:16:00 AM10/8/13
to jav...@googlegroups.com
O Eclipse é um chato quanto a isso. Tenho quase certeza que tem haver com os namespaces que você colocou no seu arquivo. Cola aqui todo o seu persistence.xml para vermos.

Arthur Franco Ferreira 
Analista Desenvolvedor Web Java (Sênior) e .NET (Pleno)
Licenciado em Computação pela UNILASALLE-RJ
Instrutor Caelum
http://www.linkedin.com/in/arthurferreira


2013/10/8 Douglas <douglas...@gmail.com>

--
Você está recebendo esta mensagem porque se inscreveu no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para javasf+un...@googlegroups.com.
Visite este grupo em http://groups.google.com/group/javasf.
Para ver esta discussão na web, acesse https://groups.google.com/d/msgid/javasf/CAOoRPSXcrpceTwYb20H6_QXKsQYv%2Bw1svXtnr2sjLY9E9EBGTg%40mail.gmail.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

Arthur Ferreira

unread,
Oct 8, 2013, 9:46:45 AM10/8/13
to jav...@googlegroups.com
É. Está tudo certo. Eu comparei com o meu aqui e o que está diferente é que eu não coloco a primeira linha de configuração do XML e a ordem dos campos. Veja:

version="2.0">

<persistence-unit name="intranet">
<provider>org.hibernate.ejb.HibernatePersistence</provider>

<jta-data-source>java:/intranetDS</jta-data-source>

<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />

<property name="hibernate.show_sql" value="true" />
<property name="hibernate.format_sql" value="false" />
</properties>
</persistence-unit>

</persistence>

No meu caso não tem as classes mapeadas, pois na versão 4 do Hibernate não precisa (tem o auto-scan). Mas, se eu tivesse que colocar, eu colocaria depois da tag properties.

Tente mudar a ordem e remover a config do XML na primeira linha.

Arthur Franco Ferreira 
Analista Desenvolvedor Web Java (Sênior) e .NET (Pleno)
Licenciado em Computação pela UNILASALLE-RJ
Instrutor Caelum
http://www.linkedin.com/in/arthurferreira


2013/10/8 Douglas <douglas...@gmail.com>
Opa... pra já!

<?xml version="1.0" encoding="UTF-8"?>
<persistence-unit name="aula">
<class>br.com.aula.entidade.Cliente</class>
<jta-data-source>cloud_ds</jta-data-source>
</persistence-unit>
</persistence>

Obrigado!



Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

--
Você está recebendo esta mensagem porque se inscreveu no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para javasf+un...@googlegroups.com.
Visite este grupo em http://groups.google.com/group/javasf.

Arthur Ferreira

unread,
Oct 8, 2013, 9:48:59 AM10/8/13
to jav...@googlegroups.com
Outra questão que esqueci de dizer: no meu Eclipse eu desconfiguro/removo TODAS as opções de validation. Isso nunca funcionou direito no Eclipse e sempre consome um processo absurdo dele, deixando-o pesado. Se for interessante, vá nas propriedades do Eclipse e, na caixa de texto, digite "Validation". Vá na opção do menu que aparecer e marque "Suspend all validations" (acho que é isso).

Ultimamente eu tenho usado o IntelliJ que dá um banho nas outras IDEs.

Arthur Franco Ferreira 
Analista Desenvolvedor Web Java (Sênior) e .NET (Pleno)
Licenciado em Computação pela UNILASALLE-RJ
Instrutor Caelum
http://www.linkedin.com/in/arthurferreira


2013/10/8 Arthur Ferreira <arthur.f...@gmail.com>

Douglas

unread,
Oct 8, 2013, 9:19:21 AM10/8/13
to jav...@googlegroups.com
Opa... pra já!

<?xml version="1.0" encoding="UTF-8"?>
<persistence-unit name="aula">
<class>br.com.aula.entidade.Cliente</class>
<jta-data-source>cloud_ds</jta-data-source>
</persistence-unit>
</persistence>

Obrigado!
Em 8 de outubro de 2013 10:16, Arthur Ferreira <arthur.f...@gmail.com> escreveu:

Douglas

unread,
Oct 8, 2013, 10:54:35 AM10/8/13
to jav...@googlegroups.com
Muito obrigado pela ajuda Arthur!

É uma faca de dois gumes(ou três) heheheh!
Se eu removo o mapeamento da classe, e deixo as propriedades do teu persistence, na classe cliente passa a aparecer esse erro:
Class "br.com.aula.entidade.Cliente" is managed, but is not listed in the persistence.xml file.
E pára de aparecer o erro original! Ou seja, o erro original está associado ao mapeamento da classe!

Se eu coloco a tag <class> depois das properties, na tag class aparece:
cvc-complex-type.2.4.d: Invalid content was found starting with element 'class'. No child element is expected at this point.

Sobre suspender as validações, sou muito inexperiente, e em certos pontos elas me ajudam, acho que não seria uma boa para mim.
Sobre o InteliJ, sempre ouvi falar muito bem, mas a grande a maioria dos tutoriais, video aulas, etc, usa o Eclipse, por isso estou tentando usá-lo.

Demorei, mas encontrei a solução, deixando como abaixo, funciona e não apresenta nenhum erro/aviso.

<persistence-unit name="aula">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>cloud_ds</jta-data-source>
<class>br.com.aula.entidade.Cliente</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>

<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.format_sql" value="false" />
</properties>
</persistence-unit>

</persistence>


Mais uma vez, muito obrigado!

Douglas



Bruno Maomeh

unread,
Oct 8, 2013, 10:59:13 AM10/8/13
to jav...@googlegroups.com
isso são só validaćões do eclipse.. geralmente eu desabilito todas elas..
elas só deixam o eclipse mais pesado..


2013/10/8 Douglas <douglas...@gmail.com>

Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

luxu

unread,
Oct 8, 2013, 12:49:41 PM10/8/13
to jav...@googlegroups.com
Abaixe otro eclipse e teste as vezes dá certo num sei pq mas dá certo...rs

Arthur Ferreira

unread,
Oct 8, 2013, 1:30:30 PM10/8/13
to jav...@googlegroups.com
Um dos motivos são os plugins, luxu. Alguns plugins vêm com vários outros validadores (JBoss Tools, por exemplo). O Eclipse puro já vem com alguns, mas só esses já são suficientemente chatos, pesados e inúteis. Melhor desabilitar a validação.

Arthur Franco Ferreira 
Analista Desenvolvedor Web Java (Sênior) e .NET (Pleno)
Licenciado em Computação pela UNILASALLE-RJ
Instrutor Caelum
http://www.linkedin.com/in/arthurferreira


2013/10/8 luxu <zica...@gmail.com>

--
Você está recebendo esta mensagem porque se inscreveu no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para javasf+un...@googlegroups.com.
Visite este grupo em http://groups.google.com/group/javasf.

Douglas

unread,
Oct 9, 2013, 6:52:21 AM10/9/13
to jav...@googlegroups.com
Bom dia!

Já baixei novamente!
Segui a sugestão de desabilitar, cada coisa que faço cria um erro novo...

Obrigado galera!

Douglas




Reply all
Reply to author
Forward
0 new messages