VRaptor e Spring @Transaction

Bom Dia, estou com o seguinte problema estou utilizando o HibernateTemplate do spring para gravar meus dados so que estou tendo o seguinte problema no meu controller esta da seguinte forma.

CONTROLLER

	@Post
	public void add(CadConta cadConta) {
		// TODO Auto-generated method stub
		PesEndereco pesEndereco = new PesEndereco();
		pesEndereco.setId(20);
		this.daoGenerico.getDao().adiciona(cadConta);
	}

DAO

	@Transactional
	@Override
	public void adiciona(final Object obj) {
		// TODO Auto-generated method stub
		super.getHibernateTemplate().saveOrUpdate(obj);
	}

Na hora que no meu Controller mando gravar o cadConta ele tambem tenta gravar o pesEndereco mas se voce olhar no meu dao eu ja estou especificando o objeto que quero gravar o porque esta fazendo isto se alguem pode me ajudar a resolver este problema?

a menos que o cadConta tenha um pesEndereco dentro dele com o id setado, ele não deveria gravar

Certo vamos dizer que sim so que esta com a anotacao @OneToMany e insertable=false,update=false por qual motivo iria gravar se nao estou setando o objeto diretamente tipo

  cadConta.setPesEndereco(pesEndereco);

se estou fazendo somente isto

    @Post  
    public void add(CadConta cadConta) {  
        // TODO Auto-generated method stub  
        PesEndereco pesEndereco = new PesEndereco();  
        pesEndereco.setId(20);  
        this.daoGenerico.getDao().adiciona(cadConta);  
    }  

mas isso não é feito no formulário?

o hibernate não vai adivinhar magicamente que vc deu new na classe e salvar.

nao estou fazendo nada no formulario somente o cadconta que esta la e so.

então debuga esse método e vê os atributos de cadConta… não faz sentido ele salvar um objeto sem vc pedir e sem estar relacionado com ninguém.

Sera que nao e o spring que esta fazendo isso ou seja todos os objetos que estao na sessao que e uma entidade ele tenta salvar.

se foi vc que deu new no objeto, não tem como o spring ter colocado na sessão do hibernate…

algum lugar do seu código está salvando um outro objeto com o mesmo id