Could not scan base packages

98 views
Skip to first unread message

Washington Botelho

unread,
Nov 26, 2011, 10:41:36 PM11/26/11
to VRaptor
Fala pessoal,

Estou usando o VRaptor 3.4.0 com o JBoss 5.1.0.GA. (JPA2 e JNDI)
Ao dar start na aplicação me ocorre esse erro [1] do scan.
Pesquisando parecia que o Garcia tinha consertado isso, sendo um problema de fragment, mas esta ocorrendo aqui.

Alguma dica?

[1] http://pastebin.com/SMMmS9m8

--
Washington Botelho

@wbotelhos
wbotelhos.com.br

Otávio Garcia

unread,
Nov 26, 2011, 10:55:57 PM11/26/11
to caelum-...@googlegroups.com


Como vc está fazendo deploy? Ear ou unpacked archive?

Teu erro é o mesmo que eu tinha quando fazia deploy de um ear + war. Isso pq o VFS se perdia ao retornar o uri real do arquivo.

Isso foi corrigido ha algum tempo. Vou fazer mais uns testes e ver com calma teu log.

Abraços

Sent from my Motorola Atrix™

--
You received this message because you are subscribed to the Google Groups "caelum-vraptor" group.
To post to this group, send email to caelum-...@googlegroups.com.
To unsubscribe from this group, send email to caelum-vrapto...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/caelum-vraptor?hl=en.

Washington Botelho

unread,
Nov 26, 2011, 11:32:23 PM11/26/11
to caelum-...@googlegroups.com
Oi Otávio,

Eu faço o deploy diretamente pelo Eclipse, no qual é copiado o myapp.jar para a pasta deploy do JBoss.
Usar o guice resolveria este problema?


--
Washington Botelho

@wbotelhos
wbotelhos.com.br



2011/11/27 Otávio Garcia <ota...@otavio.com.br>

Otávio Garcia

unread,
Nov 26, 2011, 11:39:09 PM11/26/11
to caelum-...@googlegroups.com
Não porque isso é quando o vraptor tenta fazere o scan dos
componentes. Não está envolvido diretamente com nenhum container IoC.

Abraços

2011/11/27 Washington Botelho <wbot...@gmail.com>:

Washington Botelho

unread,
Nov 27, 2011, 8:29:30 PM11/27/11
to caelum-...@googlegroups.com
Oi Otávio,

Teria algum workaround que eu poderia fazer para acertar isso por enquanto?

Otávio Garcia

unread,
Nov 27, 2011, 9:33:41 PM11/27/11
to caelum-...@googlegroups.com
Já fiz a correção e um push lá no github.

Se você não tiver como compilar direto do source, me avise que te mando o jar.

Washington Botelho

unread,
Nov 27, 2011, 11:14:13 PM11/27/11
to caelum-...@googlegroups.com
Muito bom Otávio,

Aqui agora não deu mais o erro, parabéns pelo fix.
Você já conseguiu rodar JPA2 nesta versão do JBoss?
Pesquisei bastante e parecia que iam dar suporte na versão 5.2 que acabou sendo liberado na versão 6.0.

Ao subir lançar esse erro:

02:13:01,143 ERROR [AbstractKernelController] Error installing to Start: name=persistence.unit:unitName=#default state=Create
java.lang.reflect.GenericSignatureFormatError

Vi alguns dizendo ser problema diretamente com o persistence.xml e que dá para trocar o nome para evitar isso.



--
Washington Botelho

@wbotelhos
wbotelhos.com.br



2011/11/28 Otávio Garcia <ota...@otavio.com.br>

Otávio Garcia

unread,
Nov 28, 2011, 7:10:40 AM11/28/11
to caelum-...@googlegroups.com

O fix foi basicamente entender o protocolo vsfzip como parte do jboss vfs. Assim ao inves do scannnotation ler o war ele procura diretamente no diretorio descompactado pelo jboss.

Quanto ao JPA, o Jboss 5 implementa JEE 5 com JPA 1. Ou seja, não irá funcionar. Mesmo que vc coloque as libs do hibernate 3.6, valerá a versão que está no appserver. Isso pq o classloader irá considerar apenas a versão que já está no nivel do appserver.

Eu nunca fiz esse tipo de coisa no Jboss, não sei se é possivel usar outra versão. No OC4J isso seria possível pq nele você consegue configurar para o classloader ignorar as libs do container. Vou pesquisar e ver o que dá para fazer no Jboss.

Você pode migrar para o Jboss 6 ou 7?

Abraços

Sent from my Motorola Atrix™

Daniel Faria Gomes

unread,
Nov 29, 2011, 9:11:01 AM11/29/11
to caelum-vraptor
Estou usando o JBoss 5.1. Estava com o mesmo erro que o Washington.
Mas mesmo depois do fix, continua não funcionando (mas dá outro
erro :P).
Agora tá dando o erro "net.vidageek.mirror.exception.MirrorException:
Could not find method getPhysicalFile on class
org.jboss.virtual.VirtualFile".

Creio que seja porque na linha 125 desse arquivo http://goo.gl/7111X,
eles chamam o método "getPhysicalFile" do VirtualFile do JBoss... mas
esse método não existe (como pode ser visto aqui: http://goo.gl/uiuJo).

Aliás, existe na versão 3 do VFS (como visto aqui
http://community.jboss.org/wiki/VFS3UserGuide#Introduction), mas creio
que ainda não era essa a versão utilizada no JBoss 5.1.

Alguém sabe a solução?

Abraços,
Daniel Faria Gomes
@danielfariati
http://blog.danielfariati.com

On Nov 28, 10:10 am, Otávio Garcia <ota...@otavio.com.br> wrote:
> O fix foi basicamente entender o protocolo vsfzip como parte do jboss vfs.
> Assim ao inves do scannnotation ler o war ele procura diretamente no
> diretorio descompactado pelo jboss.
>
> Quanto ao JPA, o Jboss 5 implementa JEE 5 com JPA 1. Ou seja, não irá
> funcionar. Mesmo que vc coloque as libs do hibernate 3.6, valerá a versão
> que está no appserver. Isso pq o classloader irá considerar apenas a versão
> que já está no nivel do appserver.
>
> Eu nunca fiz esse tipo de coisa no Jboss, não sei se é possivel usar outra
> versão. No OC4J isso seria possível pq nele você consegue configurar para o
> classloader ignorar as libs do container. Vou pesquisar e ver o que dá para
> fazer no Jboss.
>
> Você pode migrar para o Jboss 6 ou 7?
>
> Abraços
>
> Sent from my Motorola Atrix™

> On Nov 28, 2011 2:14 AM, "Washington Botelho" <wbotel...@gmail.com> wrote:
>
>
>
>
>
>
>
> > Muito bom Otávio,
>
> > Aqui agora não deu mais o erro, parabéns pelo fix.
> > Você já conseguiu rodar JPA2 nesta versão do JBoss?
> > Pesquisei bastante e parecia que iam dar suporte na versão 5.2 que acabou
> > sendo liberado na versão 6.0.
>
> > Ao subir lançar esse erro:
>
> > 02:13:01,143 ERROR [AbstractKernelController] Error installing to Start:
> > name=persistence.unit:unitName=#default state=Create
> > java.lang.reflect.GenericSignatureFormatError
>
> > Vi alguns dizendo ser problema diretamente com o persistence.xml e que dá
> > para trocar o nome para evitar isso.
>
> > --
> > Washington Botelho

> > @wbotelhos <http://twitter.com/wbotelhos>
> > wbotelhos.com.br
> >  <http://twitter.com/wbotelhos>


>
> > 2011/11/28 Otávio Garcia <ota...@otavio.com.br>
>
> >> Já fiz a correção e um push lá no github.
>
> >> Se você não tiver como compilar direto do source, me avise que te mando o
> >> jar.
>
> >> Abraços
>

> >> 2011/11/27 Washington Botelho <wbotel...@gmail.com>:


> >> > Oi Otávio,
>
> >> > Teria algum workaround que eu poderia fazer para acertar isso por
> >> enquanto?
>
> >> > --
> >> > Washington Botelho
> >> > @wbotelhos
> >> > wbotelhos.com.br
>
> >> > 2011/11/27 Otávio Garcia <ota...@otavio.com.br>
>
> >> >> Não porque isso é quando o vraptor tenta fazere o scan dos
> >> >> componentes. Não está envolvido diretamente com nenhum container IoC.
>
> >> >> Abraços
>

> >> >> 2011/11/27 Washington Botelho <wbotel...@gmail.com>:


> >> >> > Oi Otávio,
>
> >> >> > Eu faço o deploy diretamente pelo Eclipse, no qual é copiado o
> >> myapp.jar
> >> >> > para a pasta deploy do JBoss.
> >> >> > Usar o guice resolveria este problema?
>
> >> >> > --
> >> >> > Washington Botelho
> >> >> > @wbotelhos
> >> >> > wbotelhos.com.br
>
> >> >> > 2011/11/27 Otávio Garcia <ota...@otavio.com.br>
>
> >> >> >> Como vc está fazendo deploy? Ear ou unpacked archive?
>
> >> >> >> Teu erro é o mesmo que eu tinha quando fazia deploy de um ear + war.
> >> >> >> Isso
> >> >> >> pq o VFS se perdia ao retornar o uri real do arquivo.
>
> >> >> >> Isso foi corrigido ha algum tempo. Vou fazer mais uns testes e ver
> >> com
> >> >> >> calma teu log.
>
> >> >> >> Abraços
>
> >> >> >> Sent from my Motorola Atrix™
>

> >> >> >> On Nov 27, 2011 1:42 AM, "Washington Botelho" <wbotel...@gmail.com>

Otávio Garcia

unread,
Nov 29, 2011, 8:54:22 PM11/29/11
to caelum-...@googlegroups.com
A solução é fazer funcionar tanto no JBoss 6 e 7 quanto no 5.x. Ou
temporariamente voce pode usar o Static Scanning.

Baseado nas tuas sugestões, ví quais são as diferenças antes ambas
APIs. Vou ver o que dá para fazer.

Abraços

2011/11/29 Daniel Faria Gomes <daniel...@gmail.com>:

Otávio Garcia

unread,
Dec 3, 2011, 12:37:39 AM12/3/11
to caelum-...@googlegroups.com
Daniel, você pode fazer um teste com esse jar aqui?

https://github.com/downloads/garcia-jj/vraptor/vraptor-3.4.x.jar

2011/11/29 Otávio Garcia <ota...@otavio.com.br>:

Washington Botelho

unread,
Dec 3, 2011, 11:13:05 AM12/3/11
to caelum-...@googlegroups.com
Oi Otávio,

Parou de dar o erro do getPhysicalFile sim e o scan esta certinho.

Em algum forum um cara deu a dica de editar o arquivo "jboss-5.1.0.GA/server/default/deployers/ejb3.deployer/META-INF/jpa-deployers-jboss-beans.xml" retirando os beans: "XPCResolver", "PersistenceParsingDeployer", "PersistenceDeployer" e o "PersistenceUnitDeployer".

Dessa forma não deu erro na inicialização e o VRaptor subiu acessando a página index @Path("/"), porém qualquer outra navegação dá erro, mesmo uma simples assim:

@Get("/empresa/consultar")
public void consultar() { }

O erro [1] começa no VRaptor e termina no Spring.

Será que uma configuração legal nesse arquivo resolveria o problema da JPA2?
Os passos deste [2] tópico parecia resolver, mas ainda sim tive problemas, porém pode dar alguma dica de solução.

[1] http://pastebin.com/LsNLFJy5
[2] http://community.jboss.org/thread/146562



--
Washington Botelho

@wbotelhos
wbotelhos.com.br



2011/12/3 Otávio Garcia <ota...@otavio.com.br>

Washington Botelho

unread,
Dec 3, 2011, 12:06:47 PM12/3/11
to caelum-...@googlegroups.com
Olhando aqui, bastaria remover o bean "PersistenceUnitDeployer".
Assim daria para subir a aplicação, trabalhar com injeção e tudo, porém qualquer injeção de repositório usando a JPA daria erro.

É nesse bean que dá o problema de parse:
java.lang.ClassCastException: org.hibernate.ejb.HibernatePersistence cannot be cast to javax.persistence.spi.PersistenceProvider

Migrei para JPA1 e funcionou.
Se alguém quiser fazer um pair para tentar rodar a JPA2 ou já ter conseguido e só me avisar.

Parabéns pelo fix Otávio, bom trabalho.

Abraço.


--
Washington Botelho

@wbotelhos
wbotelhos.com.br



2011/12/3 Washington Botelho <wbot...@gmail.com>

Daniel Faria Gomes

unread,
Dec 3, 2011, 2:06:39 PM12/3/11
to caelum-...@googlegroups.com
Com JPA1 deu sucesso aqui.

Valeu pelo fix aí, Otávio.
_____________
Daniel Faria
  
(11) 8350-0236

Otávio Garcia

unread,
Dec 4, 2011, 12:07:06 AM12/4/11
to caelum-...@googlegroups.com
Washington, as libs do Hibernate com JPA2 estão dentro do
server/default/lib ou no WAR da aplicação?

2011/12/3 Washington Botelho <wbot...@gmail.com>:

Washington Botelho

unread,
Dec 4, 2011, 11:16:32 AM12/4/11
to caelum-...@googlegroups.com
Oi Otávio,

Tentei de duas formas:

1. Deixar as libs da JPA2 no war e as originais da JPA1 no JBoss.
Dessa forma dá o problema do classloader, claro.
Testei várias dicas de isolamento de classloader, jboss.xml, jboss-classloader.xml, mas não deu.
2. Deletei as libs da JPA1 do JBoss e migrei as libs da JPA2 da minha app para o JBoss.
Ele reclama que o slf4j tem que ser 1.5.5 or earlier e pedi o upgrade do bind para 1.6.x ou 2.0.x.
Voltando a versão do slf4j a app sobe normal.
Então qualquer chamada de controller que tenha a injeção de um repository que possui a injeção do EntityManager dá erro [1].

Neste resposta [2] dessa thread o cara usa um orm.xml e um jboss.xml, porém a DTD dele ainda é 1.0 e o JBoss é rígido quando a especificação da DTD. Vi em algum lugar que é necessário adicionar a DTD da JPA 2.0 no JBoss.

[1] http://pastebin.com/gb8RWKW4
[2] http://community.jboss.org/thread/146562#519835


--
Washington Botelho

@wbotelhos
wbotelhos.com.br



2011/12/4 Otávio Garcia <ota...@otavio.com.br>

Daniel Kist

unread,
Dec 20, 2011, 8:45:03 AM12/20/11
to caelum-vraptor
Otávio,
Testei o seu jar, mas o erro persiste.

On 3 dez, 03:37, Otávio Garcia <ota...@otavio.com.br> wrote:
> Daniel, você pode fazer um teste com esse jar aqui?
>
> https://github.com/downloads/garcia-jj/vraptor/vraptor-3.4.x.jar
>
> 2011/11/29 Otávio Garcia <ota...@otavio.com.br>:
>
>
>
>
>
>
>
> > A solução é fazer funcionar tanto no JBoss 6 e 7 quanto no 5.x. Ou
> > temporariamente voce pode usar o Static Scanning.
>
> > Baseado nas tuas sugestões, ví quais são as diferenças antes ambas
> > APIs. Vou ver o que dá para fazer.
>
> > Abraços
>

> > 2011/11/29 Daniel Faria Gomes <danielfari...@gmail.com>:


> >> Estou usando o JBoss 5.1. Estava com o mesmo erro que o Washington.
> >> Mas mesmo depois do fix, continua não funcionando (mas dá outro
> >> erro :P).
> >> Agora tá dando o erro "net.vidageek.mirror.exception.MirrorException:
> >> Could not find method getPhysicalFile on class
> >> org.jboss.virtual.VirtualFile".
>

> >> Creio que seja porque na linha 125 desse arquivohttp://goo.gl/7111X,

Reply all
Reply to author
Forward
0 new messages