Search code examples
oracleoracle11gacloracle-xe

Oracle 11G XE - ORA-46105 error while creating an ACL


I have created a database manually on a windows 2008 R2 server - 64 bit having Oracle 11G - Express Edition installed on it.I have also installed XDB on it manually.

I have validated the XDB install by executing

Select comp_name,status,version from dba_registry the output of which is :-

COMP_NAME                          STATUS VERSION
Oracle XML Database                VALID  11.2.0.2.0
Oracle Database Catalog Views      VALID  11.2.0.2.0
Oracle Database Packages and Types VALID  11.2.0.2.0

I have a package which uses UTL_SMTP in order to send out emails. (Note: This db alongwith this package is migrated from Oracle 8)

I am trying to add an ACL as required by Oracle 11G for UTL_SMTP to work. The code i am using for this is

BEGIN
  dbms_network_acl_admin.create_acl(acl => 'mailserver_acl.xml',
  description => 'Email permissions for App',
  principal => 'MYUSER', is_grant => TRUE, privilege => 'connect');
END;
/

However, this above code when executed gives me an error

ORA-46105: Unable to load security class DAV::dav ORA-06512: at "SYS.DBMS_NETWORK_ACL_ADMIN", line 252 ORA-06512: at line 2

I have tried un-installing XDB and re-installing again but to no avail.

Does anyone with experience in Oracle know if just installing XDB is sufficient for creating ACL's or are there any other dependencies that i also need to install?


Solution

  • There are missing XML files in folder rdbms/xml in Oracle 11g XE home directory. Try to obtain missing files from another version of Oracle Database (i.e. SE 11.2.0.3) then reinstall XDB.