package com.portal.web.sysadmin.flowadmin; import java.io.InputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.activiti.engine.repository.ProcessDefinition; import org.springframework.stereotype.Component; import org.springframework.web.servlet.ModelAndView; import com.portal.pub.web.core.AbstractBaseController; @Component("/sysadmin/flowadmin/FlowImageShow.html") public class FlowImageShow extends AbstractBaseController { @Override public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { String processDefinitionId = request .getParameter("processDefinitionId"); ProcessDefinition processDefinitioin = repositoryService .createProcessDefinitionQuery() .processDefinitionId(processDefinitionId).singleResult(); String diagramResourceName = processDefinitioin .getDiagramResourceName(); InputStream is = repositoryService.getResourceAsStream( processDefinitioin.getDeploymentId(), diagramResourceName); byte[] b = new byte[1024]; int len = -1; while ((len = is.read(b, 0, 1024)) != -1) { response.getOutputStream().write(b, 0, len); } return null; } }
?
<image width="300" height="100" src="#context()/sysadmin/flowadmin/FlowImageShow.html?processDefinitionId=$processDefinition.getId()"/>