【发布时间】:2016-10-29 09:42:47
【问题描述】:
必须使用APEX_MAIL.SEND() 方法从oracle apex 发送电子邮件。
我正在使用代码:
BEGIN
apex_mail.send(p_to => 'tanmoydawn@gmail.com'/*l_to_addr*/,
p_from => 'tanmoydawn@gmail.com'/*l_from_addr*/,
p_bcc => l_bcc_addr,
p_subj => l_mail_sub,
p_body => 'Service Request ' || :mail_body ||
'Note:- This is a system generated Email. Please DO NOT REPLY to it.');
apex_mail.push_queue;
EXCEPTION
when others then
INSERT INTO send_mail_error_test VALUES ('Send_mail',systimestamp,:service_request_id||'-err:'||seq_service_req_error_id.NEXTVAL);
COMMIT;
END;
***所有变量都包含正确的值
使用数据库并且该数据库具有 ACL(访问控制列表)访问权限
在 apex 管理服务中,将电子邮件的实例设置配置为主机名、端口、启用电子邮件配置。
UTL_SMTP 包已安装
在同一进程中,在同一控制流点,使用 utl_Smtp 发送邮件的代码工作正常,但 apex_mail.send() 不起作用。
apex_mail.send()没有给出任何错误或异常,但我没有收到它的电子邮件。有一个困惑,有一些类似的解决方案,'
APEX_040200'应该已经添加到ACL。但是我正在使用并在其上实现代码的数据库,比如“apex_user”已经添加到ACL。即使现在我还必须将“APEX_040200”或“APEX_050200”添加到ACL?
谁能帮助我并给我一个富有成效的解决方案?我正在使用顶点 5.0.2.00.07。
【问题讨论】:
-
如果您使用的是apex 5。有一个内置的过程可以自动发送邮件。您只需填写参数。您尝试过吗?
标签: plsql sendmail oracle-apex