/* * (non-Javadoc) * * @see javax.servlet.jsp.tagext.TagSupport#doStartTag() */ @Override public int doStartTag() throws JspException { HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); try { Map<String, Object> result = null; if ("download".equalsIgnoreCase(mode)) { result = download(); } else { result = new HashMap<String, Object>(); result.put("Error", "Missing or invalid mode parameter"); result.put("Code", -1); } if (logger.isInfoEnabled()) { logger.info(mapper.writeValueAsString(result)); } mapper.writeValue(pageContext.getOut(), result); } catch (JsonMappingException jme) { if (logger.isErrorEnabled()) { logger.error(jme.getMessage()); logger.error(jme.getStackTrace()); } throw new JspException(jme); } catch (JsonGenerationException jge) { if (logger.isErrorEnabled()) { logger.error(jge.getMessage()); logger.error(jge.getStackTrace()); } throw new JspException(jge); } catch (IOException ioe) { if (logger.isErrorEnabled()) { logger.error(ioe.getMessage()); logger.error(ioe.getStackTrace()); } throw new JspException(ioe); } return TagSupport.SKIP_BODY; }