2010-08-30 87 views
0

我有一個tomcat或spring的奇怪問題。我對我的網站進行了重大修改,並且電子郵件不再提供。我使用authsmtp,它需要認證(所以他們可以適當地說明我使用他們的服務)。沒問題,我在春天有這個配置:Tomcat/Spring不再使用認證發送電子郵件到SMTP服務器

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"> 
    <property name="host" value="mail.authsmtp.com"/> 
    <property name="username" value="my_authsmtp_username"/> 
    <property name="password" value="my_authsmtp_password"/> 
</bean> 

工作正常。然而,現在我得到這個錯誤:

Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 513 5.0.0 Your email system must authenticate before sending mail.

雖然我的log4j電子郵件繼續工作正常。一個到mail.authsmtp.com的端口25的測試telnet也可以很好地處理示例SMTP會話。我使用以前版本的站點對上面的mailSender配置做了一些比較,並沒有區別(可能是因爲密碼中有一個字符)。可能是什麼問題呢?

我能想到的唯一的事情是我最初啓動的服務器沒有上面的用戶名/密碼元素(是我們的部署機制中的一個錯誤)。所以最初實際上這是完全有道理的。從那以後,我已經糾正它並添加了用戶名/密碼元素,但問題仍然存在。我在想也許舊的配置緩存在某個地方? tomcat會在任何地方緩存嗎?我刪除了工作和臨時目錄無濟於事。雖然我已經修改了主機abcd1234authsmtp.com,並適當地失敗,此錯誤:

Mail server connection failed; nested exception is javax.mail.MessagingException: Unknown SMTP host: mail.abcd1234authsmtp.com; nested exception is: java.net.UnknownHostException: mail.abcd1234authsmtp.com

所以我知道我在用正確的配置和tomcat /春天看到最新版本,因爲某些原因Spring不再進行身份驗證......我使用的是和以前一樣的Spring版本(v3.0.2)。有任何想法嗎?

回答

1

嘗試增加

<property name="javaMailProperties"> 
    <props> 
    <prop key="mail.smtp.auth">true</prop> 
    <prop key="mail.smtp.starttls.enable">false</prop> 
    </props> 
</property> 

`