não consigo configurar vRaptor 3?

66 respostas
E

Já baixei a apostila da caleum fj-28, mas não consigo roda na relacionado ao vraptor 3???

os exemplos da apostila relacionado a hibernat consegui fazer mas o vraport não consegui nada.

eu acho que é a configuração do eclipse e tomcat… gostaria que vocês me ajuda a configura eclipse e tomcat junto com os xml que precisa para roda aplicação.

66 Respostas

J

Eu tava com o mesmo problema !

1 - Baixa o Eclipse GAlileu
2 - BAixa o MYDVDS.
3- IMPORTA O PROJETO

vai em novo servidor !
Instala o tom cat em runtime !

Roda !

L

bom, vc criou um Dynamic Web Project no eclipse?
colocou todos os jars que estão no vraptor-blank-project na pasta WebContent/WEB-INF/lib do seu projeto?
copiou o web.xml que está no blank project pro seu projeto?
configurou algum tomcat? (Preferences >> server runtimes >> new server >> tomcat)
clicou com o botão direito no projeto >> Run As >> Run On Server >> Tomcat ?

E

Eu já fiz todos os procedimentos que Lucas e outros usurário do forum passou mas mesmo assim não tive exceto, o interessante foi que eu executei da pasta WebContent qualquer arquivo .jsp e abriu normalmente no Firefox, mas dentro da pasta WebContent/WEB-INF/ não consigo executa!!!

agradeço as dicas mencionada.

J

vai ter que dar ! ou vai ou racha … vamos fazer via logme ou vnc ?

L

@eu.eu
vc tah acessando as jsps diretamente?

não é assim que funciona… jsps dentro do WEB-INF não são visíveis via web (na verdade nenhum arquivo dentro da WEB-INF)

vc tem que acessar as jsps a partir das lógicas do vraptor, ou seja, se vc tem um controller do tipo:

@Resource
public class BananaController {
    public void macaco() {

    }
}

vc vai acessar pela url http://localhost:8080/contexto_da_aplicação/banana/macaco e o resultado vai ser o jsp em WebContent/WEB-INF/jsp/banana/macaco.jsp

J

Deu até fome agora…

E

bom fiz o teste com vraptor-blank-project-3.1.2, e mostrou a pagina com a messagem "It works!! VRaptor! " ok.

mas quando faço com meu projeto não da certo, lembrendo que copiei todos os .jars para /lib. esta assim meu projeto:

Descobri que esta faltando web.xml....

não colocava o nome da classe:

não estava colocando o nome da classe

 <display-name>br.com.caelum.goodbuy</display-name>

mesmo assim não mostar nada????
[color=blue]
meu código e este:[/color]

/src
  -->br.com.caelum.goodbuy
     -->Mundo.java

Codigo:

package br.com.caelum.goodbuy;

import javax.annotation.Resource;

public class Mundo {
	
	@Resource
	public void boasVindas(){
		System.out.println("Óla mundo!!!");
	}

}

o restante:

WebContent
   -->WEB-INF
         --> jsp
             -->mundo
                  -->boasVindas.jsp

codigo:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

olá mundo!!!

</body>
</html>
Erro:
HTTP Status 404 - /goodbuy/mundo/boasVindas

--------------------------------------------------------------------------------

type Status report

message /goodbuy/mundo/boasVindas

description The requested resource (/goodbuy/mundo/boasVindas) is not available.


--------------------------------------------------------------------------------

Apache Tomcat/6.0.14
J

Pega o mydvds… apaga todas as classes dvd e dvdrental, deixa somente oque for referente a Usuario, pronto tu vai ter uma tela de login e senha, faz teu porjeto apos essa tela…

E

Obrigado pela dica, mas não quero copia projetos na web e depois reforma para meu projeto.
O que quero e aprende como funcionar a tecnologia vRaptor 3 e contruir aparte do zero “0”

J

Sim, dessa maneira vc não vai estar copiando nada, somente usando a BASE já configurada e funcional, se mudar o hibernate.cfg.xml para postgresql ou mysql vai funcionar, resumindo, através do mydvds você pode estudar toda a configuração e extrutura de Action do VR3…

Pegando o Projeto em Branco, você vai perder muito tempo, usando o Mydvds, já ajuda você ter bons resultados em dias !

grande abraço !

boa noite.

L

@eu.eu
vc usou o @Resource errado… o @Resource certo é o br.com.caelum.vraptor.Resource e ele tem que estar anotado na classe…

se ainda assim não funcionar, dá uma olhada se o eclipse tá compilando suas classes pra pasta WEB-INF/classes:
botão direito no projeto >> Properties >> Java Build Path >> Source >> o Default output folder tem que ser a pasta WebContent/WEB-INF/classes do seu projeto…

[]'s

E

Bom fiz os procedimento que você falou, mas ainda não esta certo???

package br.com.caelum.goodbuy;

import br.com.caelum.vraptor.Resource;

@Resource // fiz alteração que você pedio........
public class Mundo {
		
	public void boasVindas(){
		System.out.println("Óla mundo!!!");
	}

}

em relação a [color=red]projeto >> Properties >> Java Build Path >> Source >> o Default output folder tem que ser a pasta WebContent/WEB-INF/classes do seu projeto…
[/color]

tava assim:

goodbuy/src

Alterei para :

goodbuy/WebContent/WEB-INF/classes

Obrigado mesmo, em me ajuda a descobri o que estou errando…

L

não entendi… deu certo ou não?

E

não…

L

o que acontece? que url vc tah acessando e o que está acontecendo?

o que tem dentro do seu WebContent/WEB-INF/jsp/mundo/boasVindas.jsp ?

E

Funcionou tava faltando eu colocar o endereço tipo:

http://localhost:8080/goodbuy/mundo/boasVindas
 mas uma duvida, pra referencia uma arquivo.jsp tem que ter um classe com o mesmo nome tipo:

Classe --> Mundo.java que faz referencia WEB-INF/jsp/mundo.jsp

outro exemplo:

Classe --> Cadastro.java que faz referencia WEB-INF/jsp/cadastro.jsp

tem que ser assim.

toda .jsp tem que esta dentro da pasta /WEB-INF/jsp ????

Agradeço muito pela ajuda.

L

não… a regra é:

Classe ClienteController, metodo adiciona ==> URL /cliente/adiciona e JSP: WEB-INF/jsp/cliente/adiciona.jsp

Classe ProdutoController, metodo lista ==> URL /produto/lista e JSP WEB-INF/jsp/produto/lista.jsp

é o nome da classe anotada com @Resource sem a palavra Controller e a primeira letra minuscula, e o nome do método…

e sim, todo jsp tem que estar em /WEB-INF/jsp//.jsp

continua lendo a apostila do FJ-28, que essas coisas são explicadas com mais detalhes

Abraços

G

Cabe lembrar que o uso dos JSPs dentro de /WEB-INF/jsp/xxx.jsp é uma convenção do Vraptor. Nada impede você de futuramente sobrescrever esse comportamento.

Aliás qualquer componente no Vraptor possui essa facilidade de ser possível alterar seu comportamento.

E

Obrigado pela explicação. Vou continuar estudando a apostila da Caelum. Só tem um problema agora: depois que deu tudo certo vraptor o hibernate esta mostrando um erro, mas antes o hibernate tava funcionando:

og4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.hibernate.MappingException: Unable to load class declared as <mapping class="br.com.caelum.goodbuy.modelo.Produto"/> in the configuration:
	at org.hibernate.cfg.AnnotationConfiguration.parseMappingElement(AnnotationConfiguration.java:740)
	at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1647)
	at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1626)
	at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:1224)
	at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:107)
	at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1600)
	at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:1212)
	at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:107)
	at org.hibernate.cfg.Configuration.configure(Configuration.java:1520)
	at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:1194)
	at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:107)
	at org.hibernate.cfg.Configuration.configure(Configuration.java:1506)
	at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:1188)
	at br.com.caelum.goodbuy.modelo.Produto.TesteDeSessao.main(TesteDeSessao.java:21)
Caused by: java.lang.ClassNotFoundException: br.com.caelum.goodbuy.modelo.Produto
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)
	at org.hibernate.cfg.AnnotationConfiguration.parseMappingElement(AnnotationConfiguration.java:737)
	... 13 more
L

o erro:

Unable to load class declared as <mapping class="br.com.caelum.goodbuy.modelo.Produto"/>  in the configuration
...
Caused by: java.lang.ClassNotFoundException: br.com.caelum.goodbuy.modelo.Produto

ou seja, a classe br.com.caelum.goodbuy.modelo.Produto não existe… dá uma olhada pra ver se é esse mesmo o nome da classe e se ela tá no pacote certo.

M

Legal as explicações, vai dar uma facilitada aqui nas configurações também !!!

J

Desculpe a invasão “AGAIN”!

Tambem estou com problemas na mesma etapa, segui os exemplos e ainda não deu certo!

Poderia dar uma olhada no seguinte post?
http://www.guj.com.br/java/235898-controlador-vraptor-nao-funciona/1#1214910

Preciso de ajuda!

J

galera, eu to com o mesmo problema, eu não consigo visualizar meus jsp’s, e nem minha mensagem de olá mundo aparece no console . . . . . . . eu copiei as libs (depois de copia meu projeto fico com um ponto de exclamação vermelho) e peguei o web.xml do black-project do VRaptor, mas não deu certo

meu projeto chama Dashboard

minha classe chama Mundo (mesmo exemplo da apostila fj28)

package teste;

import br.com.caelum.vraptor.Resource;

@Resource
public class Mundo {

	public void boasVindas(){
		System.out.println("Isso é um teste");
	}
}

meu jsp chama boasVindas e tá dentro de WEB-INF/jsp/mundo

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	Olá Mundo
</html>

e o meu web.xml tá assim:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<display-name>dashboard</display-name>

	<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>
</web-app>

o console não mostra nada, apenas as mensagens normais do tomcat

21/03/2012 23:38:58 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
21/03/2012 23:38:58 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
21/03/2012 23:38:58 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/28 config=null
21/03/2012 23:38:58 org.apache.catalina.startup.Catalina start
INFO: Server startup in 3335 ms

eu to tentando acessa por essa url:

http://localhost:8080/dashboard/mundo/boasVindas

Galera, to meio desesperado já, se alguém puder me ajudar vo fica muito feliz

vlws

L

coloque esse arquivo na sua pasta src:

e veja se aparecem os logs do VRaptor.

J

tá com uma warning nessa linha:

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

de resto eu tenho as seguintes saidas no console

23:52:45,391 DEBUG [StereotypedBeansRegistrar] scanning class br.com.caelum.vraptor.converter.BigDecimalConverter for bean definition bigDecimalConverter

23:52:45,392 DEBUG [ConverterHandler    ] Ignoring handling default converter class br.com.caelum.vraptor.converter.BigDecimalConverter

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning class br.com.caelum.vraptor.core.RequestInfo for bean definition VRaptorRequestProvider

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning interface br.com.caelum.vraptor.http.MutableRequest for bean definition httpServletRequestProvider

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning interface br.com.caelum.vraptor.http.MutableResponse for bean definition httpServletResponseProvider

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning interface javax.servlet.http.HttpSession for bean definition httpSessionProvider

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning class br.com.caelum.vraptor.core.DefaultInterceptorStack for bean definition defaultInterceptorStack

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning class br.com.caelum.vraptor.serialization.xstream.XStreamBuilderImpl for bean definition XStreamBuilderImpl

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning class br.com.caelum.vraptor.core.EnhancedRequestExecution for bean definition enhancedRequestExecution

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning class org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator for bean definition org.springframework.aop.config.internalAutoProxyCreator

23:52:45,392 DEBUG [StereotypedBeansRegistrar] scanning class br.com.caelum.vraptor.blank.IndexController for bean definition indexController

23:52:45,393 DEBUG [ResourceHandler     ] Found resource: class br.com.caelum.vraptor.blank.IndexController

23:52:45,413 DEBUG [ParanamerNameProvider] Found parameter names with paranamer for IndexController.index() as []

23:52:45,414 DEBUG [ParanamerNameProvider] Found parameter names with paranamer for IndexController.index() as []

23:52:45,416 DEBUG [DefaultParametersControl] For / retrieved / with {}

23:52:45,416  INFO [DefaultRouteBuilder ] /                                                 [ALL] -> IndexController.index()

23:52:45,418  INFO [VRaptor             ] VRaptor 3.4.0 successfuly initialized

21/03/2012 23:52:45 org.apache.coyote.http11.Http11Protocol start

INFO: Starting Coyote HTTP/1.1 on http-8080

21/03/2012 23:52:45 org.apache.jk.common.ChannelSocket init

INFO: JK: ajp13 listening on /0.0.0.0:8009

21/03/2012 23:52:45 org.apache.jk.server.JkMain start

INFO: Jk running ID=0 time=0/61  config=null

21/03/2012 23:52:45 org.apache.catalina.startup.Catalina start

INFO: Server startup in 3192 ms

alguma informação útil nessas saídas???

L

de acordo com esse log ele só está considerando o IndexController, não olhou pra classe Mundo…

você criou ela no mesmo projeto do blank project?

J

esse ai é otro projeto, o nome dele é dashboard . . . . . . . . mais eu ainda tenho um projeto chamado blankproject no meu workspace

será que tem alguma coisa a ver com o contexto da minha aplicação???

o estranho é que quando eu tento acessa http://localhost:8080/dashboard/mundo/boasVindas o console não mostra nem o System.out.println(“isso é um teste”) que eu coloquei, não aparece nada mesmo

L

era pra colocar o log4j.xml no projeto do dashboard

J

foi lá que eu coloquei, mas continua não aparecendo nada no console, será que a url que eu to chamando é a certa??? existe algum modo além do deploy de muda o modo de chama a aplicação no browser???

o arquivo fica com a seguinte warning

The file cannot be validated as the XML definition “/home/fuckmaster/workspace/Dashboard/src/log4j.dtd (Arquivo ou diretório não encontrado)” that is specified as describing the syntax of the file cannot be located. log4j.xml

não sei se a warning é relevante

L

esse warning não muda nada…

se não apareceu nada no log, pode ser que ele esteja desconsiderando o seu web.xml…

o web.xml está no lugar certo? os jars estão em WEB-INF/lib? a pasta raiz web está configurada?(WebContent por exemplo) O projeto está dentro do servidor?

se sim, tenta dar cleans nos seus projetos e no servidor e tenta de novo.

J

Man, funciono \o/ . . . . . . eu tava vacilando, eu criei o projeto com primeira letra maiúscula, então o certo seria chama http://localhost:8080/Dashboard/mundo/boasVindas . . . . . . falha minha, vlw mesmo pela ajuda =D

Mais aproveitando que eu já to aqui, quando eu exportar o arquivo war, eu posso coloca o nome que eu aquise no arquivo, certo?? . . . . tipo oNomeQueEuQuero.war . . . . . . . ai pra chama é só usa http:///oNomeQueEuQuero/meusMetodo

É isso mesmo???

L

isso

J

novamente gostaria de um help galera . . . . . . eu consigo acessa minhas jsps agora porém dá erro 500 quando tento enviar minhas informações através do formulario

o formulário é esse ai

<body>
	<form action="adiciona">
		<fieldset>
			<legend>Adicionar Projeto</legend>
			
			<label for="projectName">Nome:</label>
			<input id="projectName" type="text" name="projeto.projectName"/><br/>
			
			<label for="local">Local:</label>
			<input id="local" type="text" name="projeto.local"/><br/>
			
			<label for="status">Status:</label>
			<input id="status" type="text" name="projeto.status"/><br/><br/>
			
			<button type="submit">Enviar</button>
		</fieldset>
	</form> 
</body>

o meu controller é esse

package Controller;

import java.util.List;

import modelos.Projeto;
import modelos.ProjetoDao;
import br.com.caelum.vraptor.Resource;
import br.com.caelum.vraptor.Result;

@Resource
public class ProjetoController {

	//private ProjetoDao dao;

	public ProjetoController() {

		//this.dao = dao;

	}

	public void formulario() {
	}

	public void adiciona(Projeto projeto) {
		new ProjetoDao().adiciona(projeto);
	}

	public void atualiza(Projeto projeto) {
		new ProjetoDao().atualiza(projeto);
	}

	public void remove(Projeto projeto) {
		new ProjetoDao().remove(projeto);
	}

	public List<Projeto> lista() {
		System.out.println("isso é um teste");
		return new ProjetoDao().lista();
	}
}

um detalhe . . . . . . o arquivo persistence.xml está na pasta WEB-INF, isso está certo???

vlw galera

L

se não falar qual foi o erro (exception) que deu não dá pra gente saber :wink:

o persistence.xml precisa estar na pasta META-INF dentro do classpath (ex pasta src, ou src/main/resources)

J

Olá, desculpe a demora, vo posta os erros então

esse é o que aparece no console

26/03/2012 12:24:50 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet default threw exception
br.com.caelum.vraptor.InterceptionException: exception raised, check root cause for details: java.lang.NoSuchFieldError: INSTANCE
	at br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:96)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:87)
	at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)
	at br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	at br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
	at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:679)
Caused by: java.lang.NoSuchFieldError: INSTANCE
	at org.hibernate.type.BasicTypeRegistry.<init>(BasicTypeRegistry.java:94)
	at org.hibernate.type.TypeResolver.<init>(TypeResolver.java:59)
	at org.hibernate.cfg.Configuration.<init>(Configuration.java:250)
	at org.hibernate.cfg.Configuration.<init>(Configuration.java:302)
	at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:108)
	at hibernate.HibernateUtil.<clinit>(HibernateUtil.java:15)
	at modelos.ProjetoDao.<init>(ProjetoDao.java:19)
	at Controller.ProjetoController.adiciona(ProjetoController.java:25)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:616)
	at br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:61)
	... 35 more

o erro acontece quando tento fazer alguma operação relacionada ao hibernate, alguma informação útil ai??

L

Caused by: java.lang.NoSuchFieldError: INSTANCE

qdo dá esse tipo de erro (NoSuchField, NoSuchMethod, etc) geralmente é problema de versão de jar… vc provavelmente está com duas versões do hibernate, ou usando algum projeto do hibernate que precisa de uma versão diferente.

J

Man, eu reparei em otro vacilo meu . . . . . . . eu não tava instanciando meu Dao, agora o erro mudo

java.lang.NullPointerException
	Controller.ProjetoController.adiciona(ProjetoController.java:25)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	java.lang.reflect.Method.invoke(Method.java:616)

Uma dúvida, eu tenho que instanciar minha classe Projeto dentro do meu form???

(form abaixo)

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="adiciona">
		<fieldset>
			<legend>Adicionar Projeto</legend>
			
			<label for="projectName">Nome:</label>
			<input id="projectName" type="text" name="projeto.projectName"/><br/>
			
			<label for="local">Local:</label>
			<input id="local" type="text" name="projeto.local"/><br/>
			
			<label for="status">Status:</label>
			<input id="status" type="text" name="projeto.status"/><br/><br/>
			
			<button type="submit">Enviar</button>
		</fieldset>
	</form> 
</body>
</html>
L
java.lang.NullPointerException  
    Controller.ProjetoController.adiciona(ProjetoController.java:25)

null pointer é sempre qdo algo está nulo :wink: o que tem nessa linha?

J

É o meu método pra adiciona

public void adiciona(Projeto projeto) {
		dao.adiciona(projeto);
	}

o método do dao tá assim

public void adiciona(Projeto p){
		Transaction tx = session.beginTransaction();
		session.save(p);
		tx.commit();
	}
L

se a linha essa:

dao.adiciona(projeto);

provavelmente é o dao que tá null… como você está criando esse dao? recebendo no construtor?

J

Isso mesmo

o ProjetoDao tá assim:

package modelos;

import hibernate.HibernateUtil;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.Transaction;

//import br.com.caelum.vraptor.ioc.Component;

//@Component
public class ProjetoDao {

	
	private Session session;
	
	public ProjetoDao(){
		this.session = new HibernateUtil().getSession();
	}
	
	public void adiciona(Projeto p){
		Transaction tx = session.beginTransaction();
		session.save(p);
		tx.commit();
	}
	
	public void atualiza(Projeto p){
		Transaction tx = session.beginTransaction();
		session.update(p);
		tx.commit();
	}
	
	public void remove(Projeto p){
		Transaction tx = session.beginTransaction();
		session.delete(p);
		tx.commit();
	}
	
	@SuppressWarnings("unckecked")
	public List<Projeto> lista(){
		return session.createCriteria(Projeto.class).list();
	}
}
L

e no controller, quem cria o dao? você recebe no construtor?

J

isso mesmo

package Controller;

import java.util.List;

import modelos.Projeto;
import modelos.ProjetoDao;
import br.com.caelum.vraptor.Resource;
import br.com.caelum.vraptor.Result;

@Resource
public class ProjetoController {

	private ProjetoDao dao;

	public ProjetoController() {

		this.dao = dao;

	}

	public void formulario() {
	}

	public void adiciona(Projeto projeto) {
		dao.adiciona(projeto);
	}

	public void atualiza(Projeto projeto) {
		dao.atualiza(projeto);
	}

	public void remove(Projeto projeto) {
		dao.remove(projeto);
	}

	public List<Projeto> lista() {
		System.out.println("isso é um teste");
		return dao.lista();
	}
}
L

aqui:

private ProjetoDao dao;  
  
    public ProjetoController() {  
  
        this.dao = dao;  
  
    }

vc colocou o dao nele mesmo… precisa receber como parâmetro no construtor.

private ProjetoDao dao;  
  
    public ProjetoController(ProjetoDao dao) {  
  
        this.dao = dao;  
  
    }

o eclipse deve até ter te dado um warning, às vezes é importante ver isso :wink:

J

Putz, agora eu tomei essa exception aqui

org.springframework.beans.factory.UnsatisfiedDependencyException

26/03/2012 16:10:38 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet default threw exception
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'projetoController': Unsatisfied dependency expressed through constructor argument with index 0 of type [modelos.ProjetoDao]: : Error creating bean with name 'projetoDao': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [modelos.ProjetoDao]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: Could not initialize class hibernate.HibernateUtil; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'projetoDao': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [modelos.ProjetoDao]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: Could not initialize class hibernate.HibernateUtil
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:730)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:196)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1003)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:907)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
	at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:329)
	at org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:325)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:263)
	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1083)
	at br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.instanceFor(SpringBasedContainer.java:86)
	at br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:46)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)
	at br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	at br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
	at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:679)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'projetoDao': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [modelos.ProjetoDao]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: Could not initialize class hibernate.HibernateUtil
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:965)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:898)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
	at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:329)
	at org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:325)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:844)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:786)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:703)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:795)
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:723)
	... 42 more
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [modelos.ProjetoDao]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: Could not initialize class hibernate.HibernateUtil
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:141)
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:74)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:958)
	... 54 more
Caused by: java.lang.NoClassDefFoundError: Could not initialize class hibernate.HibernateUtil
	at modelos.ProjetoDao.<init>(ProjetoDao.java:19)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:126)
	... 56 more
L

deu algum pau na inicialização da classe HibernateUtil… deve estar no log de inicialização do servidor.

se vc está usa o VRaptor vc não precisa dessa classe, de qqer forma… vc pode registrar o pacote do hibernate e receber a Session direto no construtor do dao.
http://vraptor.caelum.com.br/documentacao/componentes-utilitarios-opcionais/

J

Man, eu to tentando usa o container do Spring, mas eu não sei como que eu configuro o VRaptor pra isso, e também não entendi o que eu tenho que coloca no CustomProvider, tem como dá uma esclarecida nisso ai???

L

vc não precisa configurar nada… basta ter os jars do spring no classpath…

vc não precisa do CustomProvider, só do context-param do packages com o valor do pacote do hibernate…

chegou a ler a apostila? http://www.caelum.com.br/curso/fj-28-vraptor-hibernate-ajax/

e fazer o curso? http://www.caelum.com.br/curso/online/vraptor/

J

Realmente eu não fiz o curso online, mas tava tentando acompanha a apostila quando deu todos esses erros . . . . . . . lendo a documentação mais atentamente eu percebi uns vacilos que eu tava cometendo por bobera . . . . . . vo rele tudo e i fazendo passo a passo

vlws :smiley:

J

Estou novamente com problemas . . . . . . eu recomecei meu projeto e acho que agora esta tudo certo, porém ocorrem erros quando tento starta o tomcat

abaixo está o erro e o meu web.xml

um help por favor

28/03/2012 13:36:56 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;.;C:\windows\Sun\Java\bin;C:\windows\system32;C:\windows;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/i386;C:\Program Files\Common Files\Business Objects\3.0\bin\NOTES\;C:\Program Files\Common Files\Business Objects\3.0\bin\NOTES\DATA\;C:\Program Files\Seagate Software\NOTES\;C:\Program Files\Seagate Software\NOTES\DATA\;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Lenovo\Bluetooth Software\;C:\Program Files\Windows Live\Shared;C:\Program Files\Attachmate\EXTRA!\;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Users\rmolnar\Rapha\java\eclipse;
28/03/2012 13:36:57 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVISO: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:dashboard' did not find a matching property.
28/03/2012 13:36:57 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
28/03/2012 13:36:57 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
28/03/2012 13:36:57 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1646 ms
28/03/2012 13:36:57 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
28/03/2012 13:36:57 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.26
28/03/2012 13:36:58 org.apache.catalina.util.SessionIdGenerator createSecureRandom
INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [163] milliseconds.
13:37:00,451  INFO [BasicConfiguration  ] Using class br.com.caelum.vraptor.ioc.spring.SpringProvider as Container Provider
13:37:00,534  INFO [DefaultSpringLocator] No application context found
13:37:00,823  INFO [WebAppBootstrapFactory] No static WebAppBootstrap found.
13:37:00,824  INFO [BasicConfiguration  ] br.com.caelum.vraptor.scanning = null
28/03/2012 13:37:00 org.apache.catalina.core.StandardContext filterStart
GRAVE: Exception starting filter vraptor
java.lang.NoSuchMethodError: org.slf4j.Logger.trace(Ljava/lang/String;)V
	at br.com.caelum.vraptor.scan.WebAppBootstrapFactory.create(WebAppBootstrapFactory.java:63)
	at br.com.caelum.vraptor.ioc.spring.SpringProvider.start(SpringProvider.java:83)
	at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:110)
	at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:103)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
28/03/2012 13:37:00 org.apache.catalina.core.StandardContext startInternal
GRAVE: Error filterStart
28/03/2012 13:37:00 org.apache.catalina.core.StandardContext startInternal
GRAVE: Context [/dashboard] startup failed due to previous errors
28/03/2012 13:37:00 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
28/03/2012 13:37:00 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
28/03/2012 13:37:00 org.apache.catalina.startup.Catalina start
INFO: Server startup in 3236 ms
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<display-name>dashboard</display-name>

	<!--
		VRaptor will scan classpath for all @Component and 
		@Resource inside WEB-INF/classes

		If you want to load them also from WEB-INF/lib/ jars, 
		you need to specify from which packages they will
		be loaded, comma separated:
	-->
	
	<!-- 
	<context-param>
        	<param-name>br.com.caelum.vraptor.packages</param-name>
	        <param-value>br.com.caelum.vraptor.blank</param-value>
    </context-param>
     -->
    
	<!--  
	   if you are using a servlet 3.0 container 
		as glassfish 3 or jetty 8, you dont need this
		filter configuration 
	-->
		
	<!-- <context-param>
        	<param-name>br.com.caelum.vraptor.provider</param-name>
	        <param-value>br.com.caelum.vraptor.ioc.guice.GuiceProvider</param-value>
    </context-param>-->
		
	<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>
</web-app>
L

java.lang.NoSuchMethodError: org.slf4j.Logger.trace(Ljava/lang/String;)V

geralmente é problema de versão de jar. vê se tem mais de um jar do slf4j (tem que ter um slf4j e um slf4j-log4j)

J

tem um só de cada . . . . . . será que pode ter alguma coisa a ver com a versão???

e essas partes, não tem problema??

13:37:00,451 INFO [BasicConfiguration ] Using class br.com.caelum.vraptor.ioc.spring.SpringProvider as Container Provider
13:37:00,534 INFO [DefaultSpringLocator] No application context found
13:37:00,823 INFO [WebAppBootstrapFactory] No static WebAppBootstrap found.
13:37:00,824 INFO [BasicConfiguration ] br.com.caelum.vraptor.scanning = null

L

qual é a versão do slf4j que vc tá usando? tenta trocar a versão (ex usar a que vem com o vraptor)

J

a versão é essa ai, já era a mesma (slf4j-api-1.6.1.jar) mas eu subistitui todos os jars pelos que vem no vraptor, agora mudo o erro:

será incompatibilidade do log4j com a versão do hibernate??

o que eu acho estranho é ele não conseguir iniciar o contexto da aplicação

28/03/2012 14:41:10 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;.;C:\windows\Sun\Java\bin;C:\windows\system32;C:\windows;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/i386;C:\Program Files\Common Files\Business Objects\3.0\bin\NOTES\;C:\Program Files\Common Files\Business Objects\3.0\bin\NOTES\DATA\;C:\Program Files\Seagate Software\NOTES\;C:\Program Files\Seagate Software\NOTES\DATA\;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Lenovo\Bluetooth Software\;C:\Program Files\Windows Live\Shared;C:\Program Files\Attachmate\EXTRA!\;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Users\rmolnar\Rapha\java\eclipse;
28/03/2012 14:41:10 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVISO: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:dashboard' did not find a matching property.
28/03/2012 14:41:10 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
28/03/2012 14:41:10 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
28/03/2012 14:41:10 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 706 ms
28/03/2012 14:41:10 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
28/03/2012 14:41:10 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.26
28/03/2012 14:41:11 org.apache.catalina.core.StandardContext filterStart
GRAVE: Exception starting filter vraptor
java.lang.IncompatibleClassChangeError: Class org.apache.log4j.Logger does not implement the requested interface org.slf4j.Logger
	at br.com.caelum.vraptor.config.BasicConfiguration.getProvider(BasicConfiguration.java:71)
	at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:103)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
28/03/2012 14:41:11 org.apache.catalina.core.StandardContext startInternal
GRAVE: Error filterStart
28/03/2012 14:41:11 org.apache.catalina.core.StandardContext startInternal
GRAVE: Context [/dashboard] startup failed due to previous errors
28/03/2012 14:41:11 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
28/03/2012 14:41:11 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
28/03/2012 14:41:11 org.apache.catalina.startup.Catalina start
INFO: Server startup in 942 ms
L

precisa fazer a mesma coisa pros jars do log4j

J

man, não tem jeito . . . . . . sempre que eu tendo acessa meu formulário ele dá erro e fala que não conaseguiu acha o bean da classe Session

to ficando doido já

eu procurei no findjar e eu tenho os jars ond vem essa classe =/

alguma sugestão???

olha a exception ai:

log4j:WARN No appenders could be found for logger (org.hibernate.validator.util.Version).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
29/03/2012 13:40:04 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [default] in context with path [/dashboard] threw exception
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'projetoController': Unsatisfied dependency expressed through constructor argument with index 0 of type [br.com.bdp.projeto.dao.ProjetoDao]: : Error creating bean with name 'projetoDao': Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.Session]: : No matching bean of type [org.hibernate.Session] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [org.hibernate.Session] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'projetoDao': Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.Session]: : No matching bean of type [org.hibernate.Session] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [org.hibernate.Session] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:730)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:196)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1003)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:907)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
	at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:329)
	at org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:325)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:263)
	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1083)
	at br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.instanceFor(SpringBasedContainer.java:86)
	at br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:46)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)
	at br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	at br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
	at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'projetoDao': Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.Session]: : No matching bean of type [org.hibernate.Session] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [org.hibernate.Session] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:730)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:196)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1003)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:907)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
	at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:329)
	at org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:325)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:844)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:786)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:703)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:795)
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:723)
	... 46 more
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [org.hibernate.Session] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:920)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:789)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:703)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:795)
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:723)
	... 60 more

o meu Controller

package br.com.bdp.projeto.controller;

import java.util.List;

import br.com.bdp.projeto.dao.ProjetoDao;
import br.com.bdp.projeto.modelo.Projeto;
import br.com.caelum.vraptor.Resource;

@Resource
public class ProjetoController {

	private ProjetoDao dao;

	public ProjetoController(ProjetoDao dao) {

		this.dao = dao;

	}

	public void formulario() {
	}

	public void adiciona(Projeto projeto) {
		this.dao.adiciona(projeto);
	}

	public void atualiza(Projeto projeto) {
		dao.atualiza(projeto);
	}

	public void remove(Projeto projeto) {
		dao.remove(projeto);
	}

	public List<Projeto> lista() {
		System.out.println("isso é um teste");
		return dao.lista();
	}
}

E o meu Dao

package br.com.bdp.projeto.dao;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.Transaction;

import br.com.bdp.projeto.modelo.Projeto;
import br.com.caelum.vraptor.ioc.Component;


@Component
public class ProjetoDao {

	
	private Session session;
	
	public ProjetoDao(Session session){
		this.session = session;
	}
	
	public void adiciona(Projeto p){
		Transaction tx = session.beginTransaction();
		session.save(p);
		tx.commit();
	}
	
	public void atualiza(Projeto p){
		Transaction tx = session.beginTransaction();
		session.update(p);
		tx.commit();
	}
	
	public void remove(Projeto p){
		Transaction tx = session.beginTransaction();
		session.delete(p);
		tx.commit();
	}
	
	@SuppressWarnings("unckecked")
	public List<Projeto> lista(){
		return session.createCriteria(Projeto.class).list();
	}
}
L

Blz, agora o problema é que não tem ninguém criando a Session do hibernate…

você pode criar um componente que faz isso, ou usar o que já vem com o VRaptor, no web.xml:

<context-param>
    <param-name>br.com.caelum.vraptor.packages</param-name>
    <param-value>br.com.caelum.vraptor.util.hibernate</param-value>
</context-param>

se já existir a configuração de packages, basta colocar os valores separados por vírgula

J

agora deu isso

GRAVE: Exception starting filter vraptor
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactoryCreator': Invocation of init method failed; nested exception is org.hibernate.HibernateException: /hibernate.cfg.xml not found
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)

eu tava usando o persistence.xml

ele não funciona???

L

se tá usando o persistence.xml troca o hibernate por jpa no context-param

J

Man, troquei por hibernate.cfg.xml e ele gera o código sql, mas ai deu otro erro estranho

pesquisei esse erro ai mas nenhuma das soluções deu certo =/

29/03/2012 17:01:38 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [default] in context with path [/dashboard] threw exception
org.hibernate.TransactionException: Transaction not successfully started
	at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:127)
	at br.com.caelum.vraptor.util.hibernate.HibernateTransactionInterceptor.intercept(HibernateTransactionInterceptor.java:50)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
	at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	at br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)
	at br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	at br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
	at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
A

Então cara,

Não sei se vai te ajudar mas também achei a apostila nessa PARTE um pouco confusa.

Para instalar o Vraptor

Para Configurar o Hibernate usa um post do Blog da Caelum que não tem erro.

Abraços!

J

awe aquino.will, vlw, foi muito útil a parte de configura o hibernate

awe lucas, uma dica que vc deu em otro tópico já resolveu

funciono, eu tava tentando abri otra conexão

agora minha dúvida é otra, eu to com o list dessa forma

<c:forEach items="${projetoList}" var="projeto">

dá o seguinte exception

GRAVE: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: /WEB-INF/jsp/projeto/lista.jsp (line: 20, column: 2) According to TLD or attribute directive in tag file, attribute items does not accept any expressions
	at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:42)
	at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:408)
	at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:149)
	at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1235)
	at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:870)
	at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1539)
	at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2376)
	at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2428)
	at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2434)

parece que não tá aceitando expression language como type do foreach =/

L

vc deve ter importado a tag c errada…

o certo é esse:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
J

o.O . . . . . . . . . era isso mesmo . . . . . . . . vlw

P

cara, estou com o mesmo problema, você conseguiu resolver?

L

vc tentou a solução proposta nesse tópico?

Criado 22 de maio de 2010
Ultima resposta 9 de mai. de 2013
Respostas 66
Participantes 9