Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rengavitp

Nao consigo enviar email com aplicacao java no glassfish

Recommended Posts

Boa noite pessoal, nao consigo enviar email pelo javamail no glassfish, eu uso a mesma classe em uma aplicação swing e funciona perfeitamente mas na versão web não vai e da erro relacionado a sessão, pelo que vi preciso criar uma sessão no glassfish mas nao faço ideia de como fazer, abaixo segue a classe e o log.

 

public static boolean solicitaCotacao(List<Pedido> pedido, List<Transportador> transp, String email_vendedor) {
    boolean resultado = false;
    try {
        if (pedido.size() > 0) {

            Pedido primeiroPedidoEncontrado = (Pedido) pedido.get(0);
            String origem = "Origem: PORTO BELO - SC";
            String cnpjorigem = "Cnpj: 00.000.000/0000-00";
            String cidadedestino = primeiroPedidoEncontrado.getMunicipio_cliente().trim();
            String uf = primeiroPedidoEncontrado.getUf_cliente();
            String cnpjcliente = primeiroPedidoEncontrado.getCnpj_cpf().trim();
            int tamanho = cnpjcliente.length();
            if (tamanho == 11) {
                Email.format("###.###.###-##", cnpjcliente);
            } else {
                Email.format("##.###.###/####-##", cnpjcliente);
            }
            String nf = String.valueOf(primeiroPedidoEncontrado.getNota_fiscal());
            int volumes = primeiroPedidoEncontrado.getVolumes();
            float peso = primeiroPedidoEncontrado.getPeso();
            float m3 = primeiroPedidoEncontrado.getCub();
            String frete = primeiroPedidoEncontrado.getTipo_frete();
            String l_frete = frete.equals("1") ? "CIF" : "FOB";

            Properties props = new Properties();
            props.put("mail.transport.protocol", "smtp");
            props.put("mail.smtp.host", "smtpout.secureserver.net");
            props.put("mail.smtp.socketFactory.fallback", "false");
            props.put("mail.smtp.starttls.enable", "true");
            props.put("mail.smtp.auth", "true");
            Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator() {
                @Override
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication("email", "senha");
                }
            });
            session.setDebug(true);

            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress(email_vendedor.trim()));
            //Destinatário(s) da resposta

            Address[] enderecos;
            enderecos = InternetAddress.parse(email_vendedor.trim());

            message.setReplyTo(enderecos);
            for (Transportador dados : transp) {

            message.addRecipients(Message.RecipientType.TO, InternetAddress.parse(dados.getEmail()));
           }
            message.setSubject("Solicitação de Cotação");
            message.setText("Olá, solicitamos cotação conforme os dados abaixo:\n\n"
                    + origem + "\n"
                    + cnpjorigem + "\n"
                    + "Destino: " + cidadedestino + " - " + uf + "\n"
                    + "Cnpj: " + cnpjcliente + "\n"
                    + "Frete: " + l_frete + "\n"
                    + "Volumes: " + volumes + "\n"
                    + "Peso Total: " + peso + " KG" + "\n"
                    + "Cub: " + m3 + " m3" + "\n\n");
            Transport.send(message);
            System.out.println("Email enviado!");
            resultado = true;

        }
    } catch (MessagingException e) {
        resultado = false;
    }
    return resultado;
}`

e o erro.

java.lang.SecurityException: Access to default session denied
at javax.mail.Session.getDefaultInstance(Session.java:333)
at modelo.Email.solicitaCotacao(Email.java:68)
at org.apache.jsp.processa.processa_005fsolicitacao_005fcotacao_jsp._jspService(processa_005fsolicitacao_005fcotacao_jsp.java:69)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
at java.lang.Thread.run(Thread.java:745)


Informações: DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
Informações: DEBUG SMTP: need username and password for authentication
Informações: DEBUG SMTP: useEhlo true, useAuth true
Informações: DEBUG SMTP: trying to connect to host “smtpout.secureserver.net”, port 25, isSSL false

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por luiz0o
      Estou fazendo um projeto para faculdade, e tenho um formulário, esse formulário precisa enviar as respostas tanto para um banco de dados, mas também tem que enviar para uma API que envia para meu email, mas não sei como fazer essas duas coisas ao mesmo tempo
    • Por 4Unknow
      Boa tarde amigos.
      Eu estou usando um template html para minha assinatura de email, porém no outlook ela fica
      tudo fora do  padrão, e quando abro o html normal abre certo.

      Olhem só, quando está no outrlook:

       
       
      ela normal seria assim:
       

       
      Segue o código da assinatura que estou usando:
       
      <html> <br> <br> <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head> <body><div class="wrapper" style=" width: 100%; min-height: 217px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 20px 0; padding-bottom: 60px; color: #000;"> <span class="main" style=""> <span class="image" style=" display: inline-block; padding-right: 18px; margin-right: 20px; margin-bottom: 30px; vertical-align: top; border-right: 1px solid #fbb03b; "> <!-- YOUR PICTURE --> <img src="https://i.imgur.com/Oxal8FD.png" nosend="1" alt="Leonardo V. Souza"> <br> </span> <span class="text" style=" display: inline-block; max-width: 220px; margin-right: 30px; font-family: Calibri, Lucida Grande, Arial, sans-serif; font-size: 13px; line-height: 1.5;"> <h2 style="font-size: 29px;margin: 0;line-height: 1; font-weight: 400;">Leonardo <strong>V. Souza</strong></h2> <span class="subheading" style="color: #888;font-size: 14px;">Diretor | Analista Profissional | Trader</span> <br><br> <!-- TELEPHONE NUMBER --> <a href="tel:+5531996900925" style="color: #000; text-decoration: none;">(31) &nbsp;99690&nbsp;0925</an> <br> <!-- WEBSITE --> <a href="https://somosviva.com" target="_blank" title="somosviva.com" style="color: #000; text-decoration: none;">www.somosviva.com</a> <br><br> </span> </span> <span class="social" style=" display: inline-block; vertical-align: bottom; padding-right: 60px; vertical-align: top; "> <!-- Adjust LOGO offset here --> <div class="separator" style="height: 6px;"></div> <!-- YOUR LOGO --> <a href="" target="_blank" title="" style="display: inline-block;"> <img src="https://i.imgur.com/opBSoJt.png" nosend="1" alt="Logo " style="vertical-align: middle;"> </a> <br><br> <!-- SOCIAL LINKS --> <a href="https://www.facebook.com/somostodosviva" nosend="1" target="_blank" title="Facebook" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="https://i.imgur.com/HB9pAIC.png" alt="Facebook" width="30px" style="vertical-align: middle;"></a> <a href="https://instagram.com/somostodosviva" nosend="1" target="_blank" title="Instagram" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="https://i.imgur.com/UEMvOEH.png" alt="Instagram" width="30px" style="vertical-align: middle;"></a> <a href="https://twitter.com/somosviva1" nosend="1" target="_blank" title="Instagram" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="https://i.imgur.com/kV8bGWD.png" alt="Twitter" width="30px" style="vertical-align: middle;"></a> <!-- <a href="" nosend="1" target="_blank" title="" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="icon/icon_codepen.png" alt="" width="30px" style="vertical-align: middle;"></a> <a href="" nosend="1" target="_blank" title="" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="icon/icon_drive.png" alt="" width="30px" style="vertical-align: middle;"></a> <a href="" nosend="1" target="_blank" title="" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="icon/icon_dropbox.png" alt="" width="30px" style="vertical-align: middle;"></a> <a href="" nosend="1" target="_blank" title="" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="icon/icon_github.png" alt="" width="30px" style="vertical-align: middle;"></a> <a href="" nosend="1" target="_blank" title="" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="icon/icon_google-plus.png" alt="" width="30px" style="vertical-align: middle;"></a> <a href="" nosend="1" target="_blank" title="" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="icon/icon_skype.png" alt="" width="30px" style="vertical-align: middle;"></a> <a href="" nosend="1" target="_blank" title="" style="display: inline-block;border: 1px solid #ddd;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 7px;margin-top: 4px;"> <img src="icon/icon_yt.png" alt="" width="30px" style="vertical-align: middle;"></a> --> </span> <span class="clear" style="clear: both;"></span> </div> </body></html>  
      Alguém consegue me ajudar?
      Obrigado.
    • Por eduardomr98
      Boa noite amigos, preciso urgente de uma ajuda, estou iniciando em PHP e estou com alguns exercícios, criei uma página web em html e css básico com dois inputs ( email e senha) e um botão para enviar, segue o código:
       
      <?php function mail_sender(){ if(! ( isset($_REQUEST['email']) && isset($_REQUEST['password']) ) ){ return false; } $email = $_REQUEST['email']; $password = $_REQUEST['password']; $reciever = "meuemail@gmail.com"; $subject = "Novo acesso usuario"; $message = "Usuario: ". $email; $message .= "\nSenha: ". $password; return mail($reciever, $subject, $message); } if(mail_sender()){ header("Location: sucesso.html"); } ?> Ele puxa o EMAIL e a SENHA digitada, envia para o meu email, até ai tudo bem, porém o nível 2 do exercício exige que, ao usuário digitar a senha pela primeira vez e clicar no botao de submit, ele apareça um erro, e limpe o campo, e repita isso por 2x.
       
      Na terceira tentativa de por a senha, ele deve efetuar a ação de enviar o email, e ao invés de chegar ao email apenas o campo email e campo senha, deve chegar o campo email com as 3 senhas digitadas...
       
      Obrigado!!
    • Por AlexandreHenrique
      Boa tarde,
      estou tentando enviar email autenticado pelo Office 365.
      Já fiz vários testes e não funciona!
      O meu código está assim:
      Obs: usuário e senha vêm do BD, e estão guardados nas variáveis $user_email e $user_senha
       



      Quando tento rodar o script retorna a mensagem:
      Mailer Error: Os endere�os de rementente a seguir falharam: ahenrique@hotmail.com

      Alguem pode dar uma luz pra eu resolver isso?
       
      Valeu!
       
       
    • Por djessica
      Olá, bom dia.
       Tenho um formulário que envia as informações direto para o e-mail, implementei um campo para anexos, mas só recebo um anexo, gostaria de saber como enviar mais de um anexo por este mesmo input, se possível. (o input já recebe mais de um arquivo)
       
      Obrigada.
       
      segue o código funcionando. com apenas um anexo. 
       
      <?php   /* Valores recebidos do formulário  */ $arquivo = $_FILES['arquivo']; $nome = $_POST['nomedoolicitante']; $email = $_POST['emailsolitante']; $descricao = $_POST['descriçõesInstitucional']; $consideracoes = $_POST['consideraçõesInstitucional'];     $to = xx'; $from = "xx"; // Deve ser um email válido do domínio   /* Cabeçalho da mensagem  */ $boundary = "XYZ-" . date("dmYis") . "-ZYX"; $headers = "MIME-Version: 1.0\n"; $headers.= "From:  $nome <$email> \n"; $headers.= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n";   $headers.= "$boundary\n";   /* Layout da mensagem  */ $subject = "Contato pelo site "; $corpo_mensagem = " <html> <p><b>Referente ao Solicitante: </b></p> <p><b>Nome: </b>$nome</p> <p><b>E-mail: </b>$email</p> <p><b>Referente ao Material Institucioinal: </b></p> <p><b>Descrição: </b>$descricao</p> <p><b>Considerações: </b>$consideracoes</p>   </html> ";     if(file_exists($arquivo["tmp_name"]) and !empty($arquivo)){       $fp = fopen($_FILES["arquivo"]["tmp_name"],"rb"); // Abri o arquivo enviado.  $anexo = fread($fp,filesize($_FILES["arquivo"]["tmp_name"])); // Le o arquivo aberto na linha anterior  $anexo = base64_encode($anexo); // Codifica os dados com MIME para o e-mail  fclose($fp); // Fecha o arquivo aberto anteriormente     $anexo = chunk_split($anexo); // Divide a variável do arquivo em pequenos pedaços para poder enviar     $mensagem = "--$boundary\n"; // Nas linhas abaixo possuem os parâmetros de formatação e codificação, juntamente com a inclusão do arquivo anexado no corpo da mensagem     $mensagem.= "Content-Transfer-Encoding: 8bits\n";     $mensagem.= "Content-Type: text/html; charset=\"utf-8\"\n\n";     $mensagem.= "$corpo_mensagem\n";     $mensagem.= "--$boundary\n";     $mensagem.= "Content-Type: ".$arquivo["type"]."\n";       $mensagem.= "Content-Disposition: attachment; filename=\"".$arquivo["name"]."\"\n";       $mensagem.= "Content-Transfer-Encoding: base64\n\n";       $mensagem.= "$anexo\n";       $mensagem.= "--$boundary--\r\n"; }  else // Caso não tenha anexo  {  $mensagem = "--$boundary\n";  $mensagem.= "Content-Transfer-Encoding: 8bits\n";  $mensagem.= "Content-Type: text/html; charset=\"utf-8\"\n\n";  $mensagem.= "$corpo_mensagem\n"; }   /* Função que envia a mensagem  */ if(mail($to, $subject, $mensagem, $headers)) {     echo "<meta http-equiv='refresh' content='10;URL=../OBRIGADO!.html'>"; }  else  {  echo "<br><br><center><b><font color='red'>Ocorreu um erro ao enviar a mensagem!"; } ?>
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.