@author
*/
public class ResourceViewResult extends ActionResult {
private String contentType;
private String path;
public ResourceViewResult(String path) {
this.path = path;
}
public ResourceViewResult(String path,String contentType) {
this.path = path;
this.contentType = contentType;
}
@Override
public void render(BeatContext beat) throws Exception {
/**
* beat.getResponse().addHeader("Content-Length",""+512);beat.getResponse().setContentType("image/"+"png");
* **/
beat.getResponse().setContentType("text/html;charset=UTF-8");
if(StringUtils.isNotEmpty(contentType)){
beat.getResponse().setContentType(contentType);
}
InputStream inputStream = beat.getServletContext().getResourceAsStream(path);
OutputStream outputStream = beat.getResponse().getOutputStream();
byte[] buffer = new byte[1024];
int len = -1;
while((len = inputStream.read(buffer))!=-1){
outputStream.write(buffer,0,len);
outputStream.flush();
}
outputStream.close();
inputStream.close();
}
}