我們在Wicket 6 Web應用程序中具有郵件功能。最近,我不得不將郵件服務器的憑據更改爲新的。我在我的本地系統(操作系統Windows,Tomcat 7網絡服務器)上測試過它,它工作得很好。郵件發送了,我收到了。 當我在我們的Web服務器(OS:Debian)上應用相同的證書時,出現以下錯誤消息:501 - 參數或參數中的語法錯誤發送郵件錯誤501 - 服務器上的參數或參數中的語法錯誤,但不在本地系統上
我多次檢查郵件地址,但一切似乎都正常。因此,我猜測可能是郵件在服務器上被tomcat 7,apache 2或hoster阻止(儘管我稱之爲hoster,他們告訴我他們的防火牆不阻止任何外出信號)。但是,憑藉舊的憑據,郵件服務運行得非常好。因此並非所有輸出信號都被阻止。
我對這種服務器配置不是很有經驗。任何人都可以給我一個提示,我必須檢查配置。感謝您的支持。
編輯
用於發送郵件,我們使用Spring框架的嵌入式JavaMail的服務。代碼如下所示:
public class PrMailSendServiceImpl implements IPrMailSenderService{
private JavaMailSenderImpl javaMailSenderService;
private String defaultEmailFrom = "[email protected]";
private String defaultEmailTo;
public void sendEmail(String toEmail, String mailSubject, String mailContent) throws MessagingException {
MimeMessage msg = javaMailSenderService.createMimeMessage();
MimeMessageHelper mime = new MimeMessageHelper(msg, true, "UTF-8");
mime.setText(mailContent, true);
mime.setSubject(mailSubject);
mime.setTo(toEmail);
mime.setFrom(defaultEmailFrom);
javaMailSenderService.send(msg);
}
/*getter and setter*/
}
發送方法執行時發生描述的錯誤。
彈簧-context.xml文件包含TE以下配置:
<bean id="javaMailSenderService" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="mrvnet.kundenserver.de" />
<property name="port" value="25" />
<property name="username" value="[email protected]" />
<property name="password" value="myPassword" />
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.starttls.enable">true</prop>
</props>
</property>
</bean>
<bean id="mailSendService" class="de.virtualsolution.procon.service.impl.PrMailSendServiceImpl">
<property name="javaMailSenderService"><ref bean="javaMailSenderService" /></property>
<property name="defaultEmailFrom"><value>[email protected]</value></property>
</bean>
沒有代碼,配置等很難說。問題似乎對Wicket沒有任何影響 –
是的,告訴我們什麼是郵件發送軟件會很有用。並且您在哪裏看到此錯誤... –
感謝您的評論和支持。我已添加郵件配置。如果您需要更多信息,請告訴我。對不起,但我正在度假:-) –