答案 0 :(得分:2)
我假设你正在使用嵌入式PL / SQL网关和XDB协议服务器,对吗?如果是,请确保:
https://docs.oracle.com/database/apex-5.1/HTMIG/configuring-embedded-PL-SQL-gateway.htm#HTMIG29205
答案 1 :(得分:0)
使用IE而不是Chrome时,登录消息指的是XDB。匿名连接似乎有问题。在thread中,给出了启用此匿名访问的解决方案。尽管我认为这可能不是一个好的解决方案,但是我没有足够的知识来更好地解决它。如果链接断开,我将解决方案粘贴到这里。它对我有用,而且我已经在其他几个地方看到了此解决方案,所以我也许这很普遍... (使用CONN sys / password AS SYSDBA)
SET SERVEROUTPUT ON
DECLARE
l_configxml XMLTYPE;
l_value VARCHAR2(5) := 'true'; -- (true/false)
BEGIN
l_configxml := DBMS_XDB.cfg_get();
IF l_configxml.existsNode('/xdbconfig/sysconfig/protocolconfig/httpconfig/allow-repository-anonymous-access') = 0 THEN
-- Add missing element.
SELECT insertChildXML
(
l_configxml,
'/xdbconfig/sysconfig/protocolconfig/httpconfig',
'allow-repository-anonymous-access',
XMLType('<allow-repository-anonymous-access xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd">' ||
l_value ||
'</allow-repository-anonymous-access>'),
'xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd"'
)
INTO l_configxml
FROM dual;
DBMS_OUTPUT.put_line('Element inserted.');
ELSE
-- Update existing element.
SELECT updateXML
(
DBMS_XDB.cfg_get(),
'/xdbconfig/sysconfig/protocolconfig/httpconfig/allow-repository-anonymous-access/text()',
l_value,
'xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd"'
)
INTO l_configxml
FROM dual;
DBMS_OUTPUT.put_line('Element updated.');
END IF;
DBMS_XDB.cfg_update(l_configxml);
DBMS_XDB.cfg_refresh;
END;
/
答案 2 :(得分:0)
为什么会这样?因为匿名帐户已锁定和/或过期。
登录到主容器数据库(不是PDB)
运行以下查询以确定状态:
select account_status from dba_users where username = 'ANONYMOUS';
如果account_status
过期,请运行以下命令:
alter user ANONYMOUS identified by anonymous;
alter user ANONYMOUS account unlock;
如果account_status
被锁定,请运行以下命令:
alter user ANONYMOUS account unlock;