Problemas ao rodar o VRaptor direto dos fontes

Povo,

baixei os fontes do VRaptor com a intenção de estudá-los. Coloquei todos os fontes nos seus devidos pacotes, e as dependências necessárias na pasta WEB-INF/lib. Criei um controller bobo, tipo Hello World.

Mas acho que o Spring tá de mal comigo, só porque eu ultimamente tenho o abandonado pra estudar EJB3… heheheheh

Eis a exception que ele está lançando, em todo seu esplendor:

Já quebrei muito a cabeça com isso e nada… alguém pode me dar uma luz nisso?

Erro ao instanciar o bean “entityManagerFactoryCreator”. Poste o seu código para visualizar melhor o erro. Lembrando que o VRaptor é um controlador, o Controller recebe a requisição, e manda o seu “Hello World” para a view, que é a sua JSP, o envio da mensagem vc pode fazer com o result.include mesmo.
Abraço!

quais jars do hibernate vc colocou no web-inf/lib?

Bem que você faz… depois que você estuda EJB3 não quer mais saber de Spring, haha. :twisted:

Mas se você quer estudar os fontes do Vraptor você não precisa exatamente rodar pelos fontes. Você pode tranquilamente ter apenas o jar com os binários do Vraptor e anexar um jar (ou até um source-dir) com os fontes do Vraptor.

Na minha IDE eu normalmente trabalho encima do meu fork do Vraptor, então eu tenho uma ant task que já compila os fontes e gera dois jars: um com o binário e outro com o fonte.

Lucas, até era uma idéia antiga que eu estava para dar… nos projetos do Apache Commons sempre há um zip ou tar.gz sendo três jars: um com o binário, um com o fonte e outro com o javadoc. Isso facilita muito quando o pessoal quer ter os fontes anexados na IDE para poder ter acesso aos docs, parametros, etc. Será que dá para ter uma ant-task para disponibilizar isso lá no google code nos downloads?

Coloquei as seguintes jarras do Hibernar:

  • hibernate-3.3.2.jar
  • hibernate-annotations-3.4.0.jar
  • hibernate-commons-annotations-3.4.0.jar
  • hibernate-validator-3.1.ga.jar
  • hibernate-validator-4.0.2.GA.jar

Meu web.xml ficou assim:

[code]<?xml version="1.0" encoding="UTF-8"?>

BaixadaVeiculos_v2

<welcome-file-list>
	<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<filter>
	<filter-name>vraptor</filter-name>
	<filter-class>br.com.caelum.vraptor.VRaptor</filter-class>
</filter>

<filter-mapping>
	<filter-name>vraptor</filter-name>
	<url-pattern>/*</url-pattern>
	<dispatcher>FORWARD</dispatcher>
	<dispatcher>REQUEST</dispatcher>
</filter-mapping>

[/code]

Mas nem sequer o index.jsp que eu criei na raiz da aplicação abre. Dá o famigerado 404, porque dá erro no deploy.

Eu usei de psicologia: tentei rodar o projeto no Tomcat (eu uso normalmente o JBoss[color=yellow]ta[/color]), dizendo pro Spring: “tá vendo, Springzinho querido… você é um contêiner leve, roda até no Tomcat… não fica chateado não!”. Mas acho que não colou.

Estou tendo que aprender EJB3 por causa do trabalho. Aliás, estou fazendo o curso FJ-31 da Caelum. Absolutamente fodástico! :smiley:

Não é bom colocar o mesmo jar em versões diferentes

[code]- hibernate-validator-3.1.ga.jar

  • hibernate-validator-4.0.2.GA.jar [/code]

Mudei isso também, deixei só a versão 4… e mesmo assim nada.


Esse erro é de JPA. Você tem alguma config do Spring ou o Spring está apenas como provider? Há algum custom component? Mande mais algumas linhas do stacktrace.

Esse erro é de JPA. Você tem alguma config do Spring ou o Spring está apenas como provider? Há algum custom component? Mande mais algumas linhas do stacktrace.

[quote=garcia-jj]
Lucas, até era uma idéia antiga que eu estava para dar… nos projetos do Apache Commons sempre há um zip ou tar.gz sendo três jars: um com o binário, um com o fonte e outro com o javadoc. Isso facilita muito quando o pessoal quer ter os fontes anexados na IDE para poder ter acesso aos docs, parametros, etc. Será que dá para ter uma ant-task para disponibilizar isso lá no google code nos downloads?[/quote]
bom, isso tá disponível no repo do maven:
http://repo1.maven.org/maven2/br/com/caelum/vraptor/3.1.3/

que vc consegue pegar com o maven ou o ivy, por exemplo…

e o zip do vraptor vem com o src e o javadoc, que vc pode linkar na sua ide tranquilamente…

Error creating bean with name ‘entityManagerFactoryCreator’

vc tá registrando o EntityManagerFactoryCreator em algum lugar?

Pensei em um zip somente com o vraptor.jar, vraptor-src.jar e vraptor-javadoc.jar. Esses dias eu estava em uma peudo 3G e precisei baixar o vraptor e me ferrei com 25M de download, sendo que eu precisava apenas do vraptor.jar.

vc por acaso configurou o vraptor-core para rodar no tomcat? ou linkou o projeto no eclipse?

qdo vc faz isso ele compila as classes do VRaptor pro WEB-INF/classes, e isso faz o vraptor escanear as classes dele mesmo, isso não é bom…

entre na pasta do vraptor-core, digite ant e pegue o jar gerado na pasta target pra colocar no WEB-INF/lib da sua aplicação

colocar mais um artefato no vraptor eh meio ruim… só se a gente substituisse o vraptor.zip, mas não sei se vai ser vantagem por causa das dependências…

de qqer forma vc pode executar:

java -jar ivy.jar -dependency br.com.caelum vraptor 3.1.3 -retrieve [artifact].[type].[ext] -notransitive

e ele vai baixar esses tres jars

Pior é que eu sequer toquei no Spring… não criei nenhum application.xml nem nada.

A única coisa que aconteceu foi que, na primeira vez, deu um erro que ele reclamava que o Hibernate não conseguia encontrar um hibernate.cfg.xml na raiz das classes. Então eu criei um bocó, só com a especificação do dialeto do banco, usuário, senha, essas coisas.

A partir daí, surgiu esse erro novo.

Tentei rodar o projeto tanto no Tomcat quanto no Jboss[color=yellow]ta[/color]. Nos dois, a cada vez eu configurava o target runtime pro servidor específico. Nos dois deu esse mesmo erro…

E pra coroar… não consigo nem sob porrada instalar corretamente o Ant na minha máquina. Nem com reza braba eu consigo colocar o bin dele no Path do rWindows!

:cry:

Tá… podem me chamar de café com leite mesmo… hehehehe

importe o projeto vraptor-core no eclipse

vá no menu Window >> Show View >> Ant

adicione o build.xml do vraptor-core

chame a task artifacts

pegue o vraptor-3.2.0-SNAPSHOT.jar na pasta vraptor-core/target

Lucas, você não me entendeu. Algumas vezes precisei apenas do vraptor.jar, aí tive de baixar 27M só por causa de um jar de 700k. Por isso dei uma sugestão de pensar em um futuro ter também na página de downloads uma opção dessas. O mais engraçado que sugeri isso no fórum do Hibernate, já que atualmente você baixa ~60M mesmo que você precise apenas do hibernate.jar de 3M, mas o pessoal também achou uma sugestão inútil. Acho que eles nunca viajaram com um 3G a tiracolo :slight_smile:

Quando eu baixei o Vraptor pelo meu fork montei sem problemas no Eclipse. Bastou gerar o build conforme você indicou a ele e tudo rodou bem. Mas como o Thiago quer por enquanto ler os fontes, não é mais fácil apenas anexar os fontes ao jar do Vraptor?

Pode ser, Garcia, acho que no final das contas vou fazer isso mesmo. Eu me forcei a ir pelo caminho “mais longo” justamente como forma de aprendizado, ao me obrigar a ir pensando sobre os problemas conforme eles fossem aparecendo.

Parece que esses problemas resolveram ser maiores do que minha capacidade atual… :smiley:

Muito obrigado pela ajuda de qualquer forma, gente!

Você usa Eclipse? Se sim, há uma forma muito simples de você fazer essa minha sugestão.

Crie uma aplicação qualquer, você pode até pegar o vraptor blank. Lá no menu Properties do projeto há um item chamado “Java Build path”. Nele, se você clicar na aba “Libraries” e depóis em “Web app libraries” você vai achar lá o jar do vraptor.

Clicando no + para expandir as opções do vraptor.jar selecione o “Source attachment” e depois “Edit”. Na janela que abrir você pode anexar um jar, zip ou diretório com os fontes. Se você baixou os fontes do Vraptor, acho que o melhor é escolher a opção “External Folder”. Indique agora o local XXXX/vraptor-core/main/java/src, sendo XXXX o local onde você tem o Vraptor.

:smiley:

Valeu, Garcia, era exatamente o que eu ia fazer; baixar o blank project do VRaptor e adicionar os fontes.

Só ia fazer um pouco diferente, ia selecionar algum .class, que o Eclipse exibe um botão tipo “Attach Source”.

Obrigado pelas dicas!!

[quote=thiagobaptista]Valeu, Garcia, era exatamente o que eu ia fazer; baixar o blank project do VRaptor e adicionar os fontes.

Só ia fazer um pouco diferente, ia selecionar algum .class, que o Eclipse exibe um botão tipo “Attach Source”.

Obrigado pelas dicas!![/quote]

Pior que é verdade, assim é bem mais fácil, hahahahaha :shock: