[RESOLVIDO]Problema com injeção de dependencia

Estou com um problema ao carregar a página, e estão com o seguinte erro:
No matching bean of type [Model.SituacaoAluno] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
A minha classe da Model é a seguinte:

[code]package Model;

import java.io.Serializable;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
@Entity
@Table(name=“SituacaoAluno”)
public class SituacaoAluno implements Serializable{

private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
@Column(name="idSituacaoAluno", nullable=false)
private int idSituacaoAluno;
@Column(name="descricaoSituacao", nullable=false, length=45)
private String descricaoSituacao;

@OneToMany(fetch = FetchType.LAZY, mappedBy="SituacaoAluno")
private List<AlunoTurma> AlunoTurma;	

public int getIdSituacaoAluno() {
	return idSituacaoAluno;
}
public void setIdSituacaoAluno(int idSituacaoAluno) {
	this.idSituacaoAluno = idSituacaoAluno;
}
public String getDescricaoSituacao() {
	return descricaoSituacao;
}
public void setDescricaoSituacao(String descricaoSituacao) {
	this.descricaoSituacao = descricaoSituacao;
}
public List<AlunoTurma> getAlunoTurma() {
	return AlunoTurma;
}
public void setAlunoTurma(List<AlunoTurma> alunoTurma) {
	AlunoTurma = alunoTurma;
}	

}
[/code]

A classe SituacaoDao é a seguinte:

[code]package Dao;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.criterion.DetachedCriteria;

import Model.SituacaoAluno;
import br.com.caelum.vraptor.ioc.Component;

@Component
public class SituacaoAlunoDao {

private final Session session;
private SituacaoAluno situacaoAluno;

public SituacaoAlunoDao(Session session, SituacaoAluno situacaoAluno){
	this.session = session;
	this.situacaoAluno = situacaoAluno;
}

public void insere(SituacaoAluno situacaoAluno){
	this.session.save(situacaoAluno);
}

public List<SituacaoAluno> listar(){
	DetachedCriteria criteria = DetachedCriteria.forClass(SituacaoAluno.class);
	return criteria.getExecutableCriteria(session).list();
}

public SituacaoAluno carrega(Integer idSituacaoAluno){
	return (SituacaoAluno) this.session.load(SituacaoAluno.class, idSituacaoAluno);
}

public SituacaoAluno getSituacaoAluno() {
	return situacaoAluno;
}

public void setSituacaoAluno(SituacaoAluno situacaoAluno) {
	this.situacaoAluno = situacaoAluno;
}

}
[/code]

E por fim a classe que estou solicitando a entidade é a AlunoTurma, que segue abaixo:

[code]package Controller;

import java.util.List;

import org.hibernate.Session;
import org.springframework.beans.factory.annotation.Autowired;

import Dao.AlunoDao;
import Dao.AlunoTurmaDao;
import Dao.SituacaoAlunoDao;
import Dao.TurmaDao;
import Model.Aluno;
import Model.AlunoTurma;
import Model.SituacaoAluno;
import Model.Turma;
import br.com.caelum.vraptor.Get;
import br.com.caelum.vraptor.Path;
import br.com.caelum.vraptor.Put;
import br.com.caelum.vraptor.Resource;
import br.com.caelum.vraptor.Result;

@Resource
public class AlunoTurmaController {

private final Result result;
private TurmaDao turmaDao;
private AlunoDao alunoDao;
private SituacaoAlunoDao situacaoAlunoDao;

@Autowired
public AlunoTurmaController(Result result, TurmaDao turmaDao, AlunoDao alunoDao, SituacaoAlunoDao situacaoAlunoDao){
	this.result = result;
	this.turmaDao = turmaDao;
	this.alunoDao = alunoDao;
	this.situacaoAlunoDao = situacaoAlunoDao;
}


@Get
@Path("alunoTurma/{idPessoa}")
public Aluno inscreve(Integer idPessoa){			
	List<Turma> turma = turmaDao.listar();
	result.include("varTurma", turma);
	
	//List<SituacaoAluno> situacao = situacaoAlunoDao.listar();
	//result.include("varSituacao", situacao);
	
	return alunoDao.carrega(idPessoa);		
}

public void inscricaoAluno(){
	List<Aluno> aluno = alunoDao.listar();
	result.include("varAluno",aluno);	
	
	//List<SituacaoAluno> situacao = situacaoAlunoDao.listar();
	//result.include("varTurma", situacao);
}

public void cadastra(AlunoTurma alunoTurma, Integer idTurma, Integer idPessoa){
	/*Turma turma = turmaDao.carrega(idTurma);
	alunoTurma.setTurma(turma);
	Aluno aluno = alunoDao.carrega(idPessoa);
	alunoTurma.setAluno(aluno);
	situacaoAlunoDao.insere(alunoTurma.getSituacaoAluno());
	alunoTurmaDao.insere(alunoTurma);*/
	result.redirectTo(this).inscricaoAluno();
}

}
[/code]

Tem vários campos comentados porque tudo que está relacionado com o SituacaoAlunoDao ta causando erros…queria saber oq está acontecendo…este @Autowired eu encontrei falando sobre ele e coloquei pra ver se resolvia, mais não adiantou…
Aguardo ajuda com certa urgencia…

  1. Colocar urgente plz no título não vai fazer ninguém te ajudar mais rápido. Mas tem efeito contrário, algumas pessoas vão fugir do seu post.

  2. Seus packages estão fora do padrão. Por definição do java eles tem que estar com nomes minúsculos. Talvez o framework está funcionando do modo errado por causa disso.

  3. Verifique se o WAR/EAR criado contém sua classe mapeada como está descrito.

mais algm?

Só pra constar, consegui resolver o problema fazendo o seguinte. Eu criei uma variavel da model na classe Dao (private Funcionario funcionario)…depois criei os Getters and Setters…depoiseu fui na Controller e fiz a mesma coisa, criei um “private FuncionarioDao funcionarioDao” e criei os Getters and Setters, sem cham-alo no construtor…isto resolveu o problema :slight_smile: