Olá meu povo,
estou tentando mudar a forma de injetar beans num sistema, de xml para annotations do Spring. Consultando alguns tutoriais e até mesmo o fórum do guj, consegui organizar de tal forma q a app sobe e td mais sem erros. Só que na hora de injetar os beans, o Spring Container parece não conseguir. Ao testar, vejo q o objeto a ser inserido(um controlador) está ‘null’. Já tentei de várias formas, sem sucesso, de forma que me parece q algum detalhe mais sutil deve estar faltando. Abaixo vão minhas configs e o código. Só lembrando q estou tentando passar para Annotations apenas uma funcionalidade, caso funcione, eu mudo o resto do sistema.
//A classe que utiliza o Controlador (que não consegue ser injetado)
public class ParametrosAction extends LoggerAction {
private IControladorParametros controladorParametros;
private IControladorStatusContato controladorStatusContato;
private IControladorHorarioFuncionamento controladorHorario;
@Autowired
public void setControladorHorarioFuncionamento(IControladorHorarioFuncionamento controladorHorario) {
this.controladorHorario = controladorHorario;
}
//A classe Controlador que deve ser injetada
@Service(value="controladorHorario")
public class ControladorHorarioFuncionamento implements IControladorHorarioFuncionamento {
private IHorarioFuncionamentoDao horarioDao;
@Autowired
public void setHorarioFuncionamento(IHorarioFuncionamentoDao horarioDao) {
this.horarioDao = horarioDao;
}
public void atualizar(HorarioFuncionamento horario) {
this.horarioDao.atualizarFlush(horario);
}
public Collection<HorarioFuncionamento> getHorarios() {
return horarioDao.getTodos();
}
}
//O Dao específico dessa funcionalidade, que deve ser injetado no controlador acima.
@Repository(value="horarioDao")
public class HorarioFuncionamentoDao extends Dao<HorarioFuncionamento> implements IHorarioFuncionamentoDao {
public HorarioFuncionamentoDao() {
super(HorarioFuncionamento.class);
}
}
Agora meu arquivo de configuração(applicationContext.xml é dividido em 2 partes, controladorContext.xml e daoContext.xml):
[code]
<context:annotation-config base-package=“com.provider.discador.horario.controle”>
<context:include-filter type="annotation"
expression=“org.springframework.stereotype.Service”/>
</context:annotation-config>
[/code]
É isso ae, não funciona nem a pau! Qualquer dica do porquê disto, pode falar q eu tô curiosíssimo! =]
Vlw!