Pessoal
Estou com bastante dificuldade para salvar um byte[] em um Blob para o banco.
Toda vez que salvo uma entidade cujo atributo do tipo Blob eu já setei ; dá um erro como se o atributo não houvesse sido atribuído.[quote]2010-04-05 18:02:47 [main] DEBUG com.altec.bsbr.test.gac.dao.BlobTest {} blobImagem.length(): 5
2010-04-05 18:02:47 [main] ERROR c.a.b.app.gac.dao.impl.AbstractDAO {} org.hibernate.PropertyValueException: not-null property references a null or transient value: com.altec.bsbr.app.gac.entity.ArquivoImagemRemetida.binariosImagem[/quote]
Meu código de teste reduzido é este:[code]public class BlobTest extends AbstractDAOTest {
private static final Logger LOGGER = LoggerFactory.getLogger(BlobTest.class);
public BlobTest() {
this.setDefaultRollback(false);
}
@Autowired
private ArquivoImagemRemetidaDAO arquivoImagemRemetidaDAO;
@Test
public void testBlob() throws Exception {
byte[] bufImagem = "abcde".getBytes();
ArquivoImagemRemetida arquivoImagemRemetida = new ArquivoImagemRemetida();
Blob blobImagem = Hibernate.createBlob(bufImagem);
LOGGER.debug("blobImagem.toString(): " + blobImagem.toString());
LOGGER.debug("blobImagem.length(): " + blobImagem.length());
arquivoImagemRemetida.setBinariosImagem(blobImagem);
arquivoImagemRemetidaDAO.incluir(arquivoImagemRemetida);
}
}[/code]
[size=20]No meu código de teste original; bufImagem é o byte[] realmente referente à uma imagem ; porem o erro é o mesmo. Então para facilitar removí esse cenário e criei um mais simples.[/size]
[color=red]O que deve ser feito para isto funcionar ? Não tenho nenhuma suspeita[/color] 
.
keywords: blob Hibernate.createBlob “org.hibernate.PropertyValueException:not-null property references a null”