estou usando o Vraptor. e sou iniciante, deu um erro eu nao consigo encontra o erro , por favor me ajudem..
obrigado....
--------------------------------------------------------------------------------------------------------------------------------
package br.com.biblioteca.entidades.cadastros;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class Acervo {
@Id
@GeneratedValue
private int id;
private String titulo;
private String subTitulo;
private Editora editora;
private Autor autor;
private ClassificacaoLiteraria classificacaoLiteraria;
private Genero genero;
private String palavrasChave;
private Idiomas idioma;
private String observacao;
private int anoPublicacao;
private String ISBN;
private char status;
private DisponibilidadeAcervo disponibilidadeAcervo;
private String localizacao;
private String assunto;
private String cutter;
private String edicao;
private String numeroPagina;
private String informacoesFisicas;
private String indice;
private Biblioteca biblioteca;
public final int getId() {
return id;
}
public final void setId(int id) {
this.id = id;
}
public final String getTitulo() {
return titulo;
}
public final void setTitulo(String titulo) {
this.titulo = titulo;
}
public final String getSubTitulo() {
return subTitulo;
}
public final void setSubTitulo(String subTitulo) {
this.subTitulo = subTitulo;
}
public final Editora getEditora() {
return editora;
}
public final void setEditora(Editora editora) {
this.editora = editora;
}
public final Autor getAutor() {
return autor;
}
public final void setAutor(Autor autor) {
this.autor = autor;
}
public final ClassificacaoLiteraria getClassificacaoLiteraria() {
return classificacaoLiteraria;
}
public final void setClassificacaoLiteraria(
ClassificacaoLiteraria classificacaoLiteraria) {
this.classificacaoLiteraria = classificacaoLiteraria;
}
public final Genero getGenero() {
return genero;
}
public final void setGenero(Genero genero) {
this.genero = genero;
}
public final String getPalavrasChave() {
return palavrasChave;
}
public final void setPalavrasChave(String palavrasChave) {
this.palavrasChave = palavrasChave;
}
public final Idiomas getIdioma() {
return idioma;
}
public final void setIdioma(Idiomas idioma) {
this.idioma = idioma;
}
public final String getObservacao() {
return observacao;
}
public final void setObservacao(String observacao) {
this.observacao = observacao;
}
public final int getAnoPublicacao() {
return anoPublicacao;
}
public final void setAnoPublicacao(int anoPublicacao) {
this.anoPublicacao = anoPublicacao;
}
public final String getISBN() {
return ISBN;
}
public final void setISBN(String iSBN) {
ISBN = iSBN;
}
public final char getStatus() {
return status;
}
public final void setStatus(char status) {
this.status = status;
}
public final DisponibilidadeAcervo getDisponibilidadeAcervo() {
return disponibilidadeAcervo;
}
public final void setDisponibilidadeAcervo(
DisponibilidadeAcervo disponibilidadeAcervo) {
this.disponibilidadeAcervo = disponibilidadeAcervo;
}
public final String getLocalizacao() {
return localizacao;
}
public final void setLocalizacao(String localizacao) {
this.localizacao = localizacao;
}
public final String getAssunto() {
return assunto;
}
public final void setAssunto(String assunto) {
this.assunto = assunto;
}
public final String getCutter() {
return cutter;
}
public final void setCutter(String cutter) {
this.cutter = cutter;
}
public final String getEdicao() {
return edicao;
}
public final void setEdicao(String edicao) {
this.edicao = edicao;
}
public final String getNumeroPagina() {
return numeroPagina;
}
public final void setNumeroPagina(String numeroPagina) {
this.numeroPagina = numeroPagina;
}
public final String getInformacoesFisicas() {
return informacoesFisicas;
}
public final void setInformacoesFisicas(String informacoesFisicas) {
this.informacoesFisicas = informacoesFisicas;
}
public final String getIndice() {
return indice;
}
public final void setIndice(String indice) {
this.indice = indice;
}
public final Biblioteca getBiblioteca() {
return biblioteca;
}
public final void setBiblioteca(Biblioteca biblioteca) {
this.biblioteca = biblioteca;
}
}
----------------------------------------------------------------------------------------------------------------------------------------------------------
package br.com.biblioteca.controller.cadastros;
import java.util.List;
import br.com.biblioteca.Dao.cadastros.AcervoDao;
import br.com.biblioteca.entidades.cadastros.Acervo;
import br.com.caelum.vraptor.Resource;
import br.com.caelum.vraptor.Result;
@Resource
public class AcervoController {
private final AcervoDao dao;
private final Result result;
public AcervoController(AcervoDao dao, Result result) {
this.dao = dao;
this.result = result;
}
public List<Acervo> lista() {
return dao.listaTudo();
}
public void adiciona(Acervo acervo) {
dao.salva(acervo);
}
public Acervo edita(Long id) {
return dao.carrega(id);
}
public void altera(Acervo acervo) {
dao.atualiza(acervo);
result.redirectTo(AcervoController.class).lista();
}
public void remove(Long id) {
Acervo acervo = dao.carrega(id);
dao.remove(acervo);
result.redirectTo(AcervoController.class).lista();
}
public void formulario() {
}
}
package br.com.biblioteca.Dao.cadastros;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.Transaction;
import br.com.biblioteca.entidades.cadastros.Acervo;
import br.com.caelum.vraptor.ioc.Component;
@Component
public class AcervoDao {
private final Session session;
public AcervoDao() {
this.session = CriadorDeSession.getSession();
}
public void salva(Acervo acervo) {
Transaction tx = session.beginTransaction();
session.save(acervo);
tx.commit();
}
@SuppressWarnings("unchecked")
public List<Acervo> listaTudo() {
return this.session.createCriteria(Acervo.class).list();
}
public Acervo carrega(Long id) {
return (Acervo) this.session.load(Acervo.class, id);
}
public void atualiza(Acervo acervo) {
Transaction tx = session.beginTransaction();
this.session.update(acervo);
tx.commit();
}
public void remove(Acervo acervo) {
Transaction tx = session.beginTransaction();
this.session.delete(acervo);
tx.commit();
}
}
<%@ 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>
<form action="adiciona">
<fieldset>
<legend>Adicionar Acervos</legend>
<label for="titulo">titulo:</label>
<input id="titulo" type="text" name="acervo.titulo"/>
<br/>
<br/>
<label for="subTitulo">subTitulo:</label>
<input id="subTitulo" name="acervo.subTitulo"></input>
<br/>
<br/>
<label for="editora">editora:</label>
<input id="editora" type="text" name="acervo.editora"/>
<br/>
<br/>
<button type="submit">Enviar</button>
</fieldset>
</form>
</body>
</html>
este e o erro :
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'acervoController' defined in file [D:\TDS\5 SEMESTRE\java\java web\apache-tomcat-6.0.18\wtpwebapps\Biblioteca\WEB-INF\classes\br\com\biblioteca\controller\cadastros\AcervoController.class]: Unsatisfied dependency expressed through constructor argument with index 0 of type [br.com.biblioteca.Dao.cadastros.AcervoDao]: : Error creating bean with name 'acervoDao' defined in file [D:\TDS\5 SEMESTRE\java\java web\apache-tomcat-6.0.18\wtpwebapps\Biblioteca\WEB-INF\classes\br\com\biblioteca\Dao\cadastros\AcervoDao.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [br.com.biblioteca.Dao.cadastros.AcervoDao]: Constructor threw exception; nested exception is org.hibernate.MappingException: Could not determine type for: br.com.biblioteca.entidades.cadastros.Biblioteca, at table: Devolucao, for columns: [org.hibernate.mapping.Column(biblioteca)]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'acervoDao' defined in file [D:\TDS\5 SEMESTRE\java\java web\apache-tomcat-6.0.18\wtpwebapps\Biblioteca\WEB-INF\classes\br\com\biblioteca\Dao\cadastros\AcervoDao.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [br.com.biblioteca.Dao.cadastros.AcervoDao]: Constructor threw exception; nested exception is org.hibernate.MappingException: Could not determine type for: br.com.biblioteca.entidades.cadastros.Biblioteca, at table: Devolucao, for columns: [org.hibernate.mapping.Column(biblioteca)]
org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:698)
org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:192)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:984)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:886)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:479)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:328)
org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:385)
org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:375)
org.springframework.context.support.AbstractApplicationContext.getBeansOfType(AbstractApplicationContext.java:1069)
org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors(BeanFactoryUtils.java:221)
br.com.caelum.vraptor.ioc.spring.VRaptorApplicationContext.getBean(VRaptorApplicationContext.java:244)
br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.instanceFor(SpringBasedContainer.java:59)
br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:41)
br.com.caelum.vraptor.core.InstantiatedInterceptorHandler.execute(InstantiatedInterceptorHandler.java:47)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
br.com.caelum.vraptor.interceptor.InterceptorListPriorToExecutionExtractor.intercept(InterceptorListPriorToExecutionExtractor.java:46)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:80)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:67)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
br.com.caelum.vraptor.core.DefaultRequestExecution.execute(DefaultRequestExecution.java:70)
br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:56)
br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
------------------------------------------------------------------------------------------------
web.xml
<?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></display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<!-- configura o controlador do VRaptor -->
<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>