Hibernate nao aceita zero

Boa tarde

Tenho uma tabela A q tem uma FK da tabela B, e essa FK nao pode ser null

dentro do A.hbm.xml eu tenho isso:

dentro da tabela B eu tenho o id 0

mas quando tento passar 0 na hora de gravar, ele entende como null
exemplo
a.setB(new B());
a.getB().setId(0);

quando ele vai fazer o insert dá not-null property… como se B estivesse null…

o q estou fazendo de errado ou o q não estou fazendo?

obrigado.

o default para o atributo unsaved-value é o zero. Se vc quer usá-lo, deve setar este valor como -1.

Este atributo é da pk.