Не удается отправить письмо в проекте ICEmobile

Я только начал вникать в ICEsoft. У меня есть проект ICEmobile, в котором я пытаюсь реализовать отправку уведомлений пользователям. Я использую Tomcat 7, ICEmobile 1.1, ICEfaces 3, и моя IDE - Eclipse Juno 4.2. Вот некоторые фрагменты кода для рендеринга сообщений:

    /** from NotificationBean class (ApplicationScoped) **/
    // render group is the current session id.
    public String renderGroup = "renderGroup";

    public NotificationBean() {
        PushRenderer.addCurrentSession(renderGroup);
    }

    /** from NotificationController class (ViewScoped) **/
    NotificationBean notifBean = (NotificationBean)FacesUtils.getManagedBean("notificationBean");
    public void sendPriorityPushMessage(ActionEvent event) {
        final PushMessage myMessage = new PushMessage(notifBean.getSubject(), notifBean.getMessage());
        final PortableRenderer portable = PushRenderer.getPortableRenderer();
        ...
        portable.render(notifBean.renderGroup, myMessage);
        ...

    }

Я настроил настройку SMTP в моем файле web.xml таким образом:

smtp.host: smtp.gmail.com

smtp.from: myaccount@gmail.com

smtp.port: 465

smtp.user: myaccount@gmail.com

smtp.password...

smtp.security: SSL

smtp.verify-server-certificate - false

Я тестирую все это на эмуляторе Android, в контейнере ICEmobile (4.1, 16 + Google API). Там я снял отметку с свойства C2DM Notify и в поле "Уведомление по электронной почте" указал свой адрес электронной почты.

С этим кодом я не могу отправить письмо. Я получаю такую ​​ошибку:

WARNING: Failed to send email message.
javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465;
  nested exception is:
    java.net.SocketException: Connection reset
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1934)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
    at javax.mail.Service.connect(Service.java:295)
    at org.icepush.EmailNotificationProvider$SendMessage.run(EmailNotificationProvider.java:138)
Caused by: java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(Unknown Source)
    at com.sun.net.ssl.internal.ssl.InputRecord.readFully(Unknown Source)
    at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at com.sun.mail.util.SocketFetcher.configureSSLSocket(SocketFetcher.java:507)
    at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:238)
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1900)

Я что-то пропустил? Я пытался настроить свой Tomcat, но не знаю, как это сделать правильно - возможно, в этом кий?

Заранее спасибо ирина

1 ответ

Я решил эту проблему, обновив свой mail.jar. Мой был слишком стар.

Другие вопросы по тегам