[RESOLVIDO]Concater String[RESOLVIDO]

4 respostas
101574

Estou enviando um e-mail, e preciso fazer um loop, e depois enviar esse dados.

Não estou conseguindo, pegar os dados do loop, e colocar em baixo do meu cabeçalho da msg.

HtmlEmail email = new HtmlEmail();
			try {
				email.setHostName(host);
				email.setAuthentication(login, senha);
				email.setSmtpPort(587);
				email.addTo(orcamento.getUsuario().getEmail());
				email.setFrom(remetente);
				email.setSubject(assunto);

				String msg1 = "<html><title>xxxxxxx</title>"
						+ "<body><h3> xxxxxxxxxxx </h3>"
						+ "<h2> Orçamento Número : " + orcamento.getId() +" - Data Orçamento: "+orcamento.getData_cadastro() +" - Hora do Orçamento: "+ orcamento.getHora_cadastro() + " </h2>"
						+ "<h4> Dados do Usuário </h4>"
						+ "<p> Usuário: "+ orcamento.getUsuario().getNome() + "</p>"
						+ "<p> E-mail: " + orcamento.getUsuario().getEmail() + " </p>"
						+ "&lt;h4&gt; Item (s) do Orçamento&lt;/h4&gt;"  
						+ "<p>Produto: </p>"
						+ "<p>Preço: </p>"
						+ "<p>Empresa: </p>"
						+ "&lt;/body&gt;&lt;/html&gt;";

				String msg2 = "ropade";
				// Lista de produtos
				for (Item item : dao2.listaTudo()) {
					item.getProdutoEmpresa().getProduto().getNome();
								System.out.println(item.getProdutoEmpresa().getEmpresa().getFantasia());
				}						
				email.setHtmlMsg (msg1 + msg2);

				// cópia para as empresas

				for (Empresa empresa : dao3.listaTudo()) {
					email.addCc(empresa.getEmail(), empresa.getFantasia());
				}

				email.setSSL(true);
				email.setDebug(true);
				email.send();

			} catch (EmailException e) {
				System.err.print("...Erro:\n\t" + e.getMessage() + "\n\n");
				e.printStackTrace();
			}

Como eu faço para no lugar de ropade, eu colocar os dados do loop de item?

Valeu Galera!

4 Respostas

Rodrigo_Sasaki

Ué, não é só concatenar ali dentro?

E fica uma dica, com várias concatenações assim, é melhor usar StringBuilder.

101574

Cara, eu fiz assim, mas não funciona.

for (Item item : dao2.listaTudo()) { String msg2 = item.getProdutoEmpresa().getProduto().getNome(); }

Rodrigo_Sasaki

Pra concatenar não pode ser assim, você está atribuindo um valor, e descartando o valor antigo. Faça assimString msg2 = ""; for (Item item : dao2.listaTudo()) { msg2 = msg2 + item.getProdutoEmpresa().getProduto().getNome(); } ou String msg2 = ""; for (Item item : dao2.listaTudo()) { msg2 += item.getProdutoEmpresa().getProduto().getNome(); }Ainda repito, use StringBuilder.

101574

Cara funcionou aqui!

Vou estudar sobre StringBuilder.

Valeus!

Criado 29 de novembro de 2012
Ultima resposta 29 de nov. de 2012
Respostas 4
Participantes 2