Quais são as classes do VRaptor que fazem a busca dos parametros setters e getters para preencher os parametros da entity do Controller vindo da view?
Tenho como fazer um debugger nisso?
Tenho uma classe de turma e no formulário um checkbox para selecionar este registro. No entanto, quando faço o POST do formulário, o setter da entity não é chamado.
Permanecendo o valor padrão do campo.
Fiz alguns testes:
public class Turma
{
@Column(columnDefinition="bool default true")
private Boolean situacao = true;
public boolean getSituacao()
{
System.out.println("Getting Situação => " + situacao);
return situacao;
}
public void setSituacao(Boolean situacao)
{
System.out.println("Setting Situação => " + situacao);
this.situacao = situacao;
}
}
public class TurmaController
{
public void update( Turma entity )
{
System.out.println("Situação no Controller => " + entity.getSituacao());
super.update( entity );
}
}
formulario.jsp
<input type="checkbox" name="entity.situacao" <c:if test="${entity.situacao}"> checked="checked" </c:if> />
========= RESULTADO SE DEIXO O CAMPO DESMARCADO NA INTERFACE
Getting Situação => true
Getting Situação => true
Situação no Controller => true
Getting Situação => true
======== RESULTADO SE DEIXO O CAMPO MARCADO NA INTERFACE
Setting Situação => true
Getting Situação => true
Situação no Controller => true
Getting Situação => true
O VRaptor não está conseguindo injetar o campo na minha entity. Ele não está passando pelo Setter... e pega o valor padrão do campo no objeto que é true.
Se eu passo o valor booleano fora da entity e faço o setter manualmente, funciona.
public class TurmaController
{
public void update( boolean situacao, Turma entity )
{
entity.setSituacao(situacao);
System.out.println("Situação no Controller => " + entity.getSituacao());
super.update( entity );
}
}
Como posso resolver isso?

