Oracle: PLS-00302: component ‘CONSTRUCT’ must be declared 

Joined:
04/09/2007
Posts:
703

August 20, 2009 03:24:25    Last update: August 20, 2009 03:25:55
I get this error using PL/SQL to enqueue a JMS message in Oracle XE:

Oracle: PLS-00302: component 'CONSTRUCT' must be declared.

Following an advice I found on the web, I ran the script "$ORACLE_HOME/rdbms/admin/prvtaqal.plb" as SYS in sqlplus. That worked even though I got a bunch of errors running the script:

Warning: Package created with compilation errors.

Errors for PACKAGE DBMS_JMS_PLSQL:

LINE/COL ERROR
-------- -----------------------------------------------------------------
131/3    PL/SQL: Declaration ignored
138/3    PLS-00311: the declaration of
         "oracle.jms.SelectorToRule.convert_jms_selector(java.lang.String,
         int, boolean, java.lang.String[]) return int" is incomplete or
         malformed

143/3    PL/SQL: Declaration ignored
148/3    PLS-00311: the declaration of
         "oracle.jms.plsql.ExceptionHandler.get_exception(oracle.sql.STRUC
         T[], int[]) return int" is incomplete or malformed


LINE/COL ERROR
-------- -----------------------------------------------------------------
154/3    PL/SQL: Declaration ignored
161/3    PLS-00311: the declaration of
         "oracle.jms.plsql.BytesMsgHandler.prepare(int, int[], byte[],
         oracle.sql.BLOB) return int" is incomplete or malformed

165/3    PL/SQL: Declaration ignored
170/3    PLS-00311: the declaration of
         "oracle.jms.plsql.BytesMsgHandler.clear_body(int, int[]) return
         int" is incomplete or malformed

174/3    PL/SQL: Declaration ignored

LINE/COL ERROR
-------- -----------------------------------------------------------------
179/3    PLS-00311: the declaration of
         "oracle.jms.plsql.BytesMsgHandler.get_mode(int, int[]) return
         int" is incomplete or malformed

183/3    PL/SQL: Declaration ignored
187/3    PLS-00311: the declaration of
         "oracle.jms.plsql.BytesMsgHandler.reset(int) return int" is
         incomplete or malformed

191/3    PL/SQL: Declaration ignored
197/3    PLS-00311: the declaration of

LINE/COL ERROR
-------- -----------------------------------------------------------------
         "oracle.jms.plsql.BytesMsgHandler.flush(int, byte[][],
         oracle.sql.BLOB[]) return int" is incomplete or malformed

201/3    PL/SQL: Declaration ignored
205/3    PLS-00311: the declaration of
         "oracle.jms.plsql.BytesMsgHandler.clean(int) return int" is
         incomplete or malformed

209/3    PL/SQL: Declaration ignored
212/3    PLS-00311: the declaration of
         "oracle.jms.plsql.BytesMsgHandler.clean_all() return int" is

LINE/COL ERROR
-------- -----------------------------------------------------------------
         incomplete or malformed

216/3    PL/SQL: Declaration ignored
222/3    PLS-00311: the declaration of
         "oracle.jms.plsql.BytesMsgHandler.read_number(int,
         oracle.sql.NUMBER[], int) return int" is incomplete or malformed


Warning: Package Body created with compilation errors.

Errors for PACKAGE BODY DBMS_JMS_PLSQL:

LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0      PL/SQL: Compilation unit analysis terminated
1/14     PLS-00304: cannot compile body of 'DBMS_JMS_PLSQL' without its
         specification

1/14     PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid

Type body created.


Type body created.

No errors.

Type body created.

No errors.

Warning: Type Body created with compilation errors.

Errors for TYPE BODY AQ$_JMS_BYTES_MESSAGE:

LINE/COL ERROR
-------- -----------------------------------------------------------------
121/5    PL/SQL: Statement ignored
121/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
139/5    PL/SQL: Statement ignored
139/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
154/5    PL/SQL: Statement ignored
154/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
171/5    PL/SQL: Statement ignored
171/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
189/7    PL/SQL: Statement ignored
189/41   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
192/5    PL/SQL: Statement ignored

LINE/COL ERROR
-------- -----------------------------------------------------------------
192/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
208/7    PL/SQL: Statement ignored
208/41   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
211/5    PL/SQL: Statement ignored
211/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
226/7    PL/SQL: Statement ignored
226/41   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
229/5    PL/SQL: Statement ignored
229/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid

Warning: Type Body created with compilation errors.

Errors for TYPE BODY AQ$_JMS_STREAM_MESSAGE:

LINE/COL ERROR
-------- -----------------------------------------------------------------
28/5     PL/SQL: Statement ignored
28/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
47/5     PL/SQL: Statement ignored
47/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
62/5     PL/SQL: Statement ignored
62/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
79/5     PL/SQL: Statement ignored
79/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
97/7     PL/SQL: Statement ignored
97/41    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
100/5    PL/SQL: Statement ignored

LINE/COL ERROR
-------- -----------------------------------------------------------------
100/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
116/7    PL/SQL: Statement ignored
116/41   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
119/5    PL/SQL: Statement ignored
119/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
134/7    PL/SQL: Statement ignored
134/41   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
137/5    PL/SQL: Statement ignored
137/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid

Warning: Type Body created with compilation errors.

Errors for TYPE BODY AQ$_JMS_MAP_MESSAGE:

LINE/COL ERROR
-------- -----------------------------------------------------------------
28/5     PL/SQL: Statement ignored
28/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
47/5     PL/SQL: Statement ignored
47/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
62/5     PL/SQL: Statement ignored
62/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
79/5     PL/SQL: Statement ignored
79/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
96/7     PL/SQL: Statement ignored
96/41    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
99/5     PL/SQL: Statement ignored

LINE/COL ERROR
-------- -----------------------------------------------------------------
99/19    PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
118/7    PL/SQL: Statement ignored
118/41   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
121/5    PL/SQL: Statement ignored
121/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
140/7    PL/SQL: Statement ignored
140/41   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid
143/5    PL/SQL: Statement ignored
143/19   PLS-00905: object SYS.DBMS_JMS_PLSQL is invalid

Package altered.


Synonym altered.

No errors.
SQL>

Share |
| Comment  | Tags
 
Easy email testing with http://www.ximailstop.com