Проблема с электронной почтой апплета Java - PullRequest
1 голос
/ 18 апреля 2011

Я создаю Java-апплет, который будет использоваться онлайн для веб-сайта компании.

Апплет представляет собой динамическую онлайн-форму, которая запрашивает у пользователя некоторые важные детали заказа для продукта, а затем отправляетэлектронное письмо по адресу, расположенному на входящем почтовом ящике компании.Я создал апплет в локальной тестовой среде, но когда я перемещаю его в тестовое местоположение (расположенное на том же веб-сервере, на котором в конечном итоге будет запущен настоящий апплет), я получаю следующую ошибку (из консоли Java в IE):

DEBUG: can't get java.home: java.security.AccessControlException: 
access denied (java.util.PropertyPermission java.home read)

Проблема (из некоторых исследований, которые я провел по этой теме) заключается в том, что веб-сервер компании (который управляет веб-сайтом) и почтовый сервер (который является конечным пунктом назначения электронной почты, итакже SMTP-сервер, который я пытаюсь использовать с JavaMail API для отправки электронной почты), находится по разным IP-адресам (хотя и находится в одной сети).Так как этот апплет не заслуживает доверия (и не подписан), апплет не имеет разрешений безопасности для доступа к службе SMTP.

Я подумал о нескольких способах обойти это, но я очень признателеннесколько советов по этому вопросу, должен ли я использовать сервлет Java с API JavaMail, чтобы форма могла отправлять электронную почту?Или я должен попытаться подписать апплет самостоятельно и, следовательно, позволить апплету получить доступ к SMTP-серверу компании?

Любые комментарии / предложения по этому вопросу помогут, большое спасибо.

1 Ответ

1 голос
/ 19 апреля 2011

В настоящее время общепринятой практикой является прием почты только с компьютеров, которые считаются подлинными почтовыми серверами, чтобы попытаться избежать получения спама. Даже если ваш почтовый сервер не настроен таким образом сейчас, это может произойти в будущем. Так что будьте на будущее и используйте сервлет!

(Еще одна причина использования сервлета - это брандмауэры, но это может не относиться к вам.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...