Esse Warn não é o problema, aqui aparece também.
Você checou se persistiu algo? Porque esse seu método adiciona não redireciona para lugar nenhum.
No seu form como está a action? Deve estar assim:
<form action="<c:url value="/usuario/adiciona"/>" method="post">
É interessante você ao adicionar, redirecionar para uma página informando o usuário que acabou de inserir, no final do método vc adiciona:
result.include("usuario", usuario); //você passa o usuário persistido
result.redirectTo(this).suaPagina(); //E ele vai estar disponível quando essa página abrir
Você cria o método e a jsp em: web-inf/jsp/usuario/suaPágina.jsp
public void suaPagina(){
}
E lá esse “usuario” estará disponível.
Outra coisa, está estranho esse seu adiciona no Controller, recomendo você fazer isso tudo no DAO.
@Inject //injeta o entityManager
EntityManager em
public void adiciona(Usuario usuario) {
em.getTransaction().begin();
em.persist(usuario);
em.getTransaction().commit();
em.close();
}
No seu Controller vc injeta o dao, persiste e redireciona:
@Inject
UsuarioDao dao;
@Inject
Result result;//result do vraptor
@Post
public void adiciona(Usuario usuario) {
dao.adiciona(usuario);
result.include("usuario", usuario); //você passa o usuário persistido
result.redirectTo(this).suaPagina(); //E ele vai estar disponível quando essa página abrir
}