Exportação html com imagem do contexto para pdf

0 respostas
T

Boa tarde Pessoal,

estou com um problema e preciso resolver, estou gerando um html dentro de uma action e exportando-o para pdf. Até ai está funcionando bacana com css e tudo mais, porém este html possui várias imagens que estão dentro da apliação, ou seja no contexo.
Estou utilizando a tag e passando o caminho inteiro com http://localhost:7001 e já tentei passando somente o contexto da aplicação porém não obtive sucesso. Fiz um teste colocando a imagemno C: da minha máquina com o prefixo file:/// e deu certo, porém com imagens do contexto não vai nem a pau, aguém pode me dar uma luz?
Segue código:

html.append("					<tr>");
			html.append("						<td align=\"center\">");
			html.append("							<table width=\"100%\">");
			html.append("								<tr>");
			for(String imgEtiqueta: resultPedido.getImgManutencaoPeca()) {
				html.append("								<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" +
																												"<img src=\"/srf/img/etiqueta/" + imgEtiqueta + "\"></td>");
			}
			html.append("								</tr>");
			html.append("							</table>");
			html.append("					</tr>");
			html.append("					<tr>");
			html.append("						<td align=\"center\">");
			html.append("							<table width=\"100%\">");
			for(FiguraEtiquetaVo figuraEtiquetaVo: result.getListaFigLav()) {
				html.append("								<tr>");
				html.append("								<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + figuraEtiquetaVo.getDsGrauInsSph() + "</td>");
				html.append("								</tr>");
			}
			html.append("							</table>");
			html.append("					</tr>");
			html.append("					<tr>");
			html.append("						<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">&nbsp</td>");
			html.append("					</tr>");
			html.append("					<tr>");
			html.append("						<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">&nbsp</td>");
			html.append("					</tr>");
			html.append("					<tr>");
			String txtProduzido = "";
			String txtPara="";
			if(result.getTextoPaisProd().trim().equals("BR")){
				txtProduzido = getText("lbl.prod.mexico"); 
				txtPara = getText("lbl.prod.mexico.para");
				html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtProduzido + "</td>");
				html.append("						</tr>");
				html.append("						<tr>");
				html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtPara + "</td>");
				html.append("						</tr>");
			}else{
				txtProduzido = getText("lbl.prod.mexico.importado") 
								+ " " + infoImportado.getTxtPaisFabPed();
				String txtInsumo="";
				
				if(infoImportado.getTxtPaisOrigemInsumo()!=null 
						&& infoImportado.getTxtPaisOrigemInsumo().trim().equals("")){
					txtInsumo = getText("lbl.prod.mexico.importado.insumo") + " " + infoImportado.getTxtPaisOrigemInsumo();
				}
				html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtProduzido + "</td>");
				html.append("						</tr>");
				html.append("						<tr>");
				html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtInsumo + "</td>");
				html.append("						</tr>");
			}
			html.append("					<tr>");
			html.append("						<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">&nbsp</td>");
			html.append("					</tr>");
			html.append("					<tr>");
			html.append("						<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">&nbsp</td>");
			html.append("					</tr>");
			if (resultPedido.getTipoPedidoPrg().trim().equals(TP_IMPORTADO_PRG)){
				String txtImportadoPor = getText("lbl.prod.mexico.importadopor");
				html.append("						<tr>");
				html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtImportadoPor + "</td>");
				html.append("						</tr>");
			}
			String txtCeA = getText("lbl.prod.mexico.cea");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtCeA + "</td>");
			html.append("						</tr>");
			String txtEndereco = getText("lbl.prod.mexico.endereco");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtEndereco + "</td>");
			html.append("						</tr>");
			String txtLocalidade = getText("lbl.prod.mexico.localidade");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtLocalidade + "</td>");
			html.append("						</tr>");
			String txtCidadeEstado = getText("lbl.prod.mexico.cidadeestado");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtCidadeEstado + "</td>");
			html.append("						</tr>");
			String txtCpPais = getText("lbl.prod.mexico.caixapostalpais");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtCpPais + "</td>");
			html.append("						</tr>");
			String txtRfc = getText("lbl.prod.mexico.rfc");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtRfc + "</td>");
			html.append("						</tr>");
			String txtTel1 = getText("lbl.prod.mexico.tel1");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtTel1 + "</td>");
			html.append("						</tr>");
			String txtTel2 = getText("lbl.prod.mexico.tel2");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">" + txtTel2 + "</td>");
			html.append("						</tr>");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">&nbsp</td>");
			html.append("						</tr>");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">&nbsp</td>");
			html.append("						</tr>");
			html.append("						<tr>");
			html.append("							<td style=\"color:#000000; font-family:Arial, sans-serif; font-size:15px;\">&nbsp</td>");
			html.append("						</tr>");
			html.append("				</table>");
			html.append("			</td>");
			html.append("		</tr>");
			html.append("	</table>");
			html.append("	<br/>");
			html.append("</body></html>");

			Html2Pdf.convert(html.toString(), outputStream, 1.5F, 1);
			response.setContentLength( outputStream.size() );
			
			ServletOutputStream sos = response.getOutputStream();
			outputStream.writeTo(sos);
			sos.flush();

Alguem pode me ajudar por favor?

Att,
Tiago

Criado 31 de março de 2011
Respostas 0
Participantes 1