JSserver Java Virtual Machine is INVALID and Unable to Compile SYS.DBMS_JAVA with PLS-201 errors
(Doc ID 2126103.1)
Last updated on AUGUST 08, 2023
Applies to:
Oracle Database - Enterprise Edition - Version 11.2.0.4 to 11.2.0.4 [Release 11.2]Oracle Database - Enterprise Edition - Version 12.2.0.1 to 12.2.0.1 [Release 12.2]
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Information in this document applies to any platform.
Symptoms
JServer Java Virtual Machine shows INVALID even after removing it and reinstalling it.
COMP_NAME VERSION STATUS
---------------------------------------- ---------- ---------
Oracle Expression Filter 11.2.0.4.0 VALID
Oracle Workspace Manager 11.2.0.4.0 VALID
Oracle Database Catalog Views 11.2.0.4.0 VALID
Oracle Database Packages and Types 11.2.0.4.0 VALID
JServer JAVA Virtual Machine 11.2.0.4.0 INVALID
Oracle XDK 11.2.0.4.0 VALID
Oracle Database Java Packages 11.2.0.4.0 VALID
Oracle Real Application Clusters 11.2.0.4.0 VALID
8 rows selected.
Attempting to invoke any routine in the dbms_java package throws ORA-980:
SQL>SELECT dbms_java.longname('TEST') long_name FROM dual;
SELECT dbms_java.longname('TEST') long_name FROM dual
*
ERROR at line 1:
ORA-00980: synonym translation is no longer valid
After review you notice that SYS.DBMS_JAVA package body is showing as INVALID.
SQL>SELECT owner, object_name, object_type, status
2 FROM dba_objects
3 WHERE object_name LIKE 'ÛMS_JAVA%'
4 OR object_name LIKE '%INITJVMAUX%'
5 ORDER BY owner, object_name, object_type;
OWNER OBJECT_NAME OBJECT_TYPE STATUS
------------------------------ ------------------------------ --------------- ---------------
PUBLIC DBMS_JAVA SYNONYM VALID
PUBLIC DBMS_JAVA_DUMP SYNONYM VALID
PUBLIC DBMS_JAVA_TEST SYNONYM VALID
SYS DBMS_JAVA PACKAGE VALID
SYS DBMS_JAVA PACKAGE BODY INVALID
...
When attempting to recompile it, it fails with the following PLS-201 errors:
SQL> alter package sys.DBMS_JAVA compile body;
Warning: Package Body altered with compilation errors.
SQL> show errors;
Errors for PACKAGE BODY SYS.DBMS_JAVA:
LINE/COL ERROR
-------- -----------------------------------------------------------------
209/7 PL/SQL: Statement ignored
209/14 PLS-00201: identifier 'DBMS_JAVA_MISC.RUNJAVA' must be declared
214/7 PL/SQL: Statement ignored
214/14 PLS-00201: identifier 'DBMS_JAVA_MISC.RUNJAVA_IN_CURRENT_SESSION' must be declared
Changes
Recently applied an OJVM PSU patch to an ORACLE_HOME that was older than January 2016 OJVM PSU.
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Changes |
Cause |
Solution |
References |