使用xquery发送电子邮件(exist-db)

时间:2013-12-25 18:44:06

标签: xml email smtp xquery

am trying to use an email module in exist-db. For this purpose I正在使用本文中描述的邮件发送电子邮件功能http://en.wikibooks.org/wiki/XQuery/Sending_E-mail 但它s not working and I don知道原因。 exide IDE显示以下错误:exerr:ERROR无法发送消息java.net.UnknownHostException:smtp.google.com [第29行,第6列]

xquery version "1.0";

declare namespace mail="http://exist-db.org/xquery/mail";

declare variable $message {
  <mail>
    <from>some name of recipient &lt;someRecipient@gmail.com&gt;</from>
    <to>someRecipient@gmail.com</to>
    <subject>Hello world</subject>
    <message>
      <text>Hello world!</text>
    </message>
  </mail>
};

if ( mail:send-email($message, 'smtp.google.com', ()) ) then
  <h1>Sent Message OK :-)</h1>
else
  <h1>Could not Send Message :-(</h1>

如果有人知道如何通过exists-db发送电子邮件,我将非常感激。 提前谢谢!

1 个答案:

答案 0 :(得分:2)

错误消息是因为没有域smtp.google.com

$ host smtp.google.com
Host smtp.google.com not found: 3(NXDOMAIN)

我建议您设置本地MTA并将$server字段留空:

  

$server? SMTP服务器。如果为空,则尝试使用本地sendmail程序。

本地邮件服务器还可以让您对SMTP服务器进行身份验证,这是大多数服务器所需要的 - 例如gmail,您可能想要使用它。