public String processarModelo( CpOrgaoUsuario ou, Map<String, Object> attrs, Map<String, Object> params) throws Exception { // Create the root hash Map root = new HashMap(); root.put("root", root); root.putAll(attrs); root.put("param", params); String sTemplate = "[#compress]\n[#include \"GERAL\"]\n"; if (ou != null) { sTemplate += "[#include \"" + ou.getAcronimoOrgaoUsu() + "\"]"; } sTemplate += "\n" + (String) attrs.get("template") + "\n[/#compress]"; Template temp = new Template((String) attrs.get("nmMod"), new StringReader(sTemplate), cfg); ByteArrayOutputStream baos = new ByteArrayOutputStream(); Writer out = new OutputStreamWriter(baos); try { temp.process(root, out); } catch (TemplateException e) { return (e.getMessage() + "\n" + e.getFTLInstructionStack()) .replace("\n", "<br/>") .replace("\r", ""); } catch (IOException e) { return e.getMessage(); } out.flush(); return baos.toString(); }
public PessoaLotacaoParser(String codigo) throws AplicacaoException { super(null, null); if (codigo == null) return; Matcher matcher = pattern.matcher(codigo); if (!matcher.matches()) throw new RuntimeException( "Erro de sintaxe na definição da lotação para qual o documento deve ser transferido. A sintaxe correta é, por exemplo: @RJSESIE."); else { String siglaPessoa = matcher.group(3); String orgaoPessoa = matcher.group(2); String orgaoLotacao = matcher.group(5); String siglaLotacao = matcher.group(6); if (siglaPessoa != null) { try { CpOrgaoUsuario orgao = null; { CpOrgaoUsuario example = new CpOrgaoUsuario(); example.setSiglaOrgaoUsu(orgaoPessoa); orgao = (CpOrgaoUsuario) CpDao.getInstance().consultarPorSigla(example); } DpPessoaDaoFiltro filtro = new DpPessoaDaoFiltro(); filtro.setSigla(orgaoPessoa + siglaPessoa); filtro.setIdOrgaoUsu(orgao.getIdOrgaoUsu()); DpPessoa pessoa = (DpPessoa) CpDao.getInstance().consultarPorSigla(filtro); this.setPessoa(pessoa); } catch (Exception ex) { } } if (siglaLotacao != null) { try { CpOrgaoUsuario orgao = null; { CpOrgaoUsuario example = new CpOrgaoUsuario(); example.setSiglaOrgaoUsu(orgaoLotacao); orgao = (CpOrgaoUsuario) CpDao.getInstance().consultarPorSigla(example); } DpLotacaoDaoFiltro filtro = new DpLotacaoDaoFiltro(); filtro.setSigla(siglaLotacao); filtro.setIdOrgaoUsu(orgao.getIdOrgaoUsu()); DpLotacao lotacao = (DpLotacao) CpDao.getInstance().consultarPorSigla(filtro); this.setLotacao(lotacao); } catch (Exception ex) { } } } }