Boa tarde,
Fiz um service onde guardo um blob (imagem, txt zip etc)…
porem o usuario pode fazer download daquele arquivo posteriormente, até ai beleza…
Fiz um service para o download, que preenche um bean, para fazer o download da imagem… porem o “slot” onde esta guardada a imagem vem nula após o select…
segue o codigo…
public class ServiceManageFileDownload implements AuditableControllerService {
private AudityCore auditEngine;
private AuditedUser user;
public void init(CASHttpServletRequest req, HttpServletResponse resp) throws Throwable { }
public void service(CASHttpServletRequest req, HttpServletResponse resp) throws Throwable {
TableTrRmaFile tbRmaFile = TraceUtil.getTable(TableTrRmaFile.class);
Long paramIdRmaFile = req.getParameterAsLong("idRmaFile", "");
if (user != null) {
Session session = null;
BeanRmaFile beanRmaFile = new BeanRmaFile();
byte [] file = null;
try {
session = TraceUtil.createSession();
Select select = session.select(tbRmaFile);
select.where(WhereConditions.equal(tbRmaFile.idFile, paramIdRmaFile));
beanRmaFile = select.getSingleRow(tbRmaFile);
file = beanRmaFile.getSlotFile();
}catch (Exception e) {
TraceCore.getInstance().getLogger().log(Logger.ERROR_DETAIL_02, e);
e.printStackTrace();
session.rollback();
} finally {
TraceUtil.close(session);
}
byte[] bytes = file;
resp.setContentType("application/octet-stream");
resp.setHeader("Content-disposition", "attachment; filename=\"" + beanRmaFile.getNameFile() + "\"");
resp.getOutputStream().write(bytes);
}
}
public void finish(CASHttpServletRequest req, HttpServletResponse resp) throws Throwable {}
public Logger getLogger() {
return TraceCore.getInstance().getLogger();
}
public void setAuditEngine(AudityCore auditEngine) {
this.auditEngine = auditEngine;
}
public AudityCore getAuditEngine() {
return auditEngine;
}
public void setUser(AuditedUser user) {
this.user = user;
}
public AuditedUser getUser() {
return user;
}
}
esse “beanRmaFile.getSlotFile();” esta pegando a imagem que esta gravada num campo blob do banco…
porem ele retorna nul…
O download começa, baixa o arquivo certo, porem o conteudo a imagem realmente não vem…
O que tem que ser feito, alguem poderia ajudar?
Obrigado!
O que tenho que fazer pra trazer a imagem