package com.fitbank.web; import java.io.FileInputStream; import java.io.OutputStream; import javax.servlet.http.HttpServletRequest; import com.fitbank.common.properties.PropertiesHandler; import com.fitbank.dto.GeneralResponse; import com.fitbank.dto.management.Detail; public class BaseImage { private HttpServletRequest request; private int num; private int sec; private Detail detail; public BaseImage(HttpServletRequest pRequest) throws Exception { this.request = pRequest; num = Integer.parseInt(request.getParameter("num")); sec = 0; if (request.getParameter("sec") != null) sec = Integer.parseInt(request.getParameter("sec")); DataManage dm = (DataManage) request.getSession().getAttribute(DataManage.KEY); detail = new Detail(); detail.setType(MessageTypes.IMG.name()); detail.setSubsystem("01"); detail.setTransaction("0001"); detail.setVersion("01"); dm.prepareHeaderData(detail, this.request); detail.findFieldByNameCreate("NUM").setValue(this.num); detail.findFieldByNameCreate("SEC").setValue(this.sec); BussinessDelegate bd = new BussinessDelegate(); this.detail = bd.process(detail); if (this.detail.getResponse().getCode().compareTo(GeneralResponse.OK) != 0) { throw new Exception(this.detail.getResponse().getUserMessage()); } } public void getImage(OutputStream pOut) throws Exception { PropertiesHandler ph=new PropertiesHandler("images"); FileInputStream fin = new FileInputStream(ph.getStringValue("webapp.images.path") + "/IMG" + num + "_" + sec); try { byte b[] = new byte[999]; int car = 0; do { car = fin.read(b); if (car > 0) { pOut.write(b); } } while (car > 0); pOut.close(); } finally { fin.close(); } } }