Oracle APEX4.2.6交互式报告电子邮件选项

问题描述 投票:1回答:2

我一直在尝试设置APEX交互式报告来发送邮件:

enter image description here

并使用正确的信息设置apex实例电子邮件选项:

enter image description here

正如oracle文档所示,启用INTERNAL工作区SCHEMA('APEX_040200')的网络设置;这是我用来启用网络设置的代码:

    DECLARE 
ACL_PATH  VARCHAR2(4000);
BEGIN
  -- Look for the ACL currently assigned to '*' and give APEX_050100
  -- the "connect" privilege if APEX_050100 does not have the privilege yet.

  SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS
   WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL;

  IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200',
     'connect') IS NULL THEN
      DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH,
     'APEX_040200', TRUE, 'connect');
  END IF;

EXCEPTION
  -- When no ACL has been assigned to '*'.
  WHEN NO_DATA_FOUND THEN
  DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('power_users.xml',
    'ACL that lets power users to connect to everywhere',
    'APEX_040200', TRUE, 'connect');
  DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('power_users.xml','*');
END;
/
COMMIT;

仍然没有改变,当我点击SEND按钮时,它只是关闭,邮件永远不会到达。

我目前正在使用oracle DB 11gR2版本。

我会感激任何帮助。

oracle-apex oracle-apex-5
2个回答
0
投票

您需要设置SMTP主机地址和端口,否则它不知道要连接到哪个服务器。


0
投票

所以我发现为什么这不起作用:

  • 为了实现此目的,Oracle数据库必须为11.2.0.4.0或更高版本(先前版本无法处理SSL / TLS协议)
  • APEX用户(在我的情况下为APEX_040200)必须位于具有“resolve”和“connect”权限的ACL列表中。
  • 必须创建包含smtp提供程序安全证书的Wallet。您可以使用orapki命令创建钱包。

注意:所有这些必须在“管理实例”>“实例设置”>电子邮件/电子钱包下的“内部”工作空间中完成。

如果您在发送电子邮件时遇到问题,请务必签署使用服务器托管de APEX应用程序配置的电子邮件帐户,这可能是smtp提供商的安全/信任问题(很可能与gmail和office365一起发生)。

在此之后,您应该可以使用从APEX应用程序配置的电子邮件发送交互式报告,而不会出现任何问题。

© www.soinside.com 2019 - 2024. All rights reserved.