Tomcat не запускается из-за сообщения JavaMail - PullRequest
0 голосов
/ 08 июня 2019

мой Tomcat перестал работать после того, как я добавил несколько файлов .jar и попробовал какой-то код. Я пытаюсь отправлять электронные письма, используя JavaMail, поэтому я скопировал код онлайн. Я довольно новичок в некоторых отношениях, поэтому я не совсем понимаю, что происходит. Что я делаю не так?

После удаления банок, их замены, поиска в Интернете и ощущения, что я возвращаюсь к неандерталцу, я вернулся к скопированному коду, прокомментировал его и начал посткомментировать его, и обнаружил, что именно эта часть нарушает Tomcat является «Message.RecipientType.TO». Самое странное, что Eclipse не будет отображать никаких ошибок, кажется, что все работает нормально, пока я не попытаюсь запустить сервер.

import com.sun.mail.smtp.*;
import java.util.*;  
import javax.mail.*;
import javax.mail.internet.*;

public class GrabarUsuario extends HttpServlet {

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    String to = "someEmail@gmail.com";
    String from = "someOtherEmail@hotmail.com";
    String host = "localhost";

    Properties properties = System.getProperties();  
    properties.setProperty("mail.smtp.host", host);  
    Session session = Session.getDefaultInstance(properties);  

    try{  
        MimeMessage message = new MimeMessage(session);  
        message.setFrom(new InternetAddress(from));
        message.addRecipient(Message.RecipientType.TO,new InternetAddress(to));
        message.setSubject("Ping");  
        message.setText("Hello, this is example of sending email  ");  

        // Send message  
        Transport.send(message);  
        System.out.println("message sent successfully....");  

    }catch (MessagingException mex) {mex.printStackTrace();}

}
}

Я получаю следующую ошибку:

(перевод строки на испанский: Никакого содержания в этом отношении: Не существует контекста имен - или имен контекста - связанных с этим загрузчиком классов - или что-то в этом роде -)

ADVERTENCIA: не удалось получить контекст именования JNDI для контейнера [StandardEngine [Каталина] .StandardHost [локальный] .StandardContext [/ Victorial]] поэтому очистка для этого контейнера не производилась javax.naming.NamingException: без содержания суть Este Cargador de Clase в org.apache.naming.ContextBindings.getClassLoader (ContextBindings.java:350) в org.apache.catalina.deploy.NamingResources.cleanUp (NamingResources.java:985) в org.apache.catalina.deploy.NamingResources.stopInternal (NamingResources.java:968) в org.apache.catalina.util.LifecycleBase.stop (LifecycleBase.java:232) в org.apache.catalina.core.StandardContext.stopInternal (StandardContext.java:5704) в org.apache.catalina.util.LifecycleBase.stop (LifecycleBase.java:232) в org.apache.catalina.util.LifecycleBase.destroy (LifecycleBase.java:272) в org.apache.catalina.core.ContainerBase.removeChild (ContainerBase.java:1041) в org.apache.catalina.core.ContainerBase.destroyInternal (ContainerBase.java:1234) в org.apache.catalina.util.LifecycleBase.destroy (LifecycleBase.java:305) в org.apache.catalina.core.ContainerBase.removeChild (ContainerBase.java:1041) в org.apache.catalina.core.ContainerBase.destroyInternal (ContainerBase.java:1234) в org.apache.catalina.util.LifecycleBase.destroy (LifecycleBase.java:305) в org.apache.catalina.core.StandardService.destroyInternal (StandardService.java:593) в org.apache.catalina.util.LifecycleBase.destroy (LifecycleBase.java:305) в org.apache.catalina.core.StandardServer.destroyInternal (StandardServer.java:829) в org.apache.catalina.util.LifecycleBase.destroy (LifecycleBase.java:305) в org.apache.catalina.startup.Catalina.start (Catalina.java:693) в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (неизвестный источник) в sun.reflect.DelegatingMethodAccessorImpl.invoke (неизвестный источник) в java.lang.reflect.Method.invoke (неизвестный источник) в org.apache.catalina.startup.Bootstrap.start (Bootstrap.java:321) в org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:455)

1 Ответ

0 голосов
/ 08 июня 2019

Я добавлю в maven зависимости, которые я использую, в рабочий проект, который может помочь.Это пакет с приложением, и я не делаю никаких изменений в установке tomcat по умолчанию:

<dependency>
  <groupId>org.apache.geronimo.specs</groupId>
  <artifactId>geronimo-javamail_1.4_spec</artifactId>
  <version>1.7.1</version>
</dependency>
<dependency>
  <groupId>org.apache.geronimo.javamail</groupId>
  <artifactId>geronimo-javamail_1.4_mail</artifactId>
  <version>1.8.4</version>
</dependency>

Я не обновлял это приложение некоторое время, поэтому, возможно, есть более новые версии из доступных.

...