Integrating PL/JSON with Oracle APEX 4.0 - oracle

I am trying to use PL/JSON in my Oracle APEX application but get the following errors when I attempt to run a Hello, world example (which works fine when I run the example from SQL*PLUS as sys):
ORA-06550: line 2, column 20:
PLS-00905: object MY_SCHEMA.JSON is invalid
ORA-06550: line 2, column 20:
PL/SQL: Item ignored
ORA-06550: line 5, column 5:
PLS-00320: the declaration of the type of this expression is incomplete or malformed
ORA-06550: line 5, column 5:
PL/SQL: Statement ignored
ORA-06550: line 7, column 26:
PLS-00201: identifier 'JSON_EXT.GET_VARCHAR2' must be declared
ORA-06550: line 7, column 5:
PL/SQL: Statement ignored
The version of Oracle database that I am using is 10g XE.
I am guessing that I haven't granted execute privileges correctly on the packages: JSON_EXT, JSON_PRINTER, and JSON_PARSER. I have tried granting execute privileges on the 3 packages to public and APEX_PUBLIC_USER but to no avail. I would really appreciate it if someone could point me in the right direction. I have Google searched for several hours and have yet to come across a post/page that answers my problem or helps explain what is wrong and how I can go about resolving my problem.
Thanks in advance!

If you do a DESC JSON_EXT, there isn't a GET_VARCHAR2 function (at least in version 0.9.2). There is a GET_STRING function that returns a VARCHAR2.
The page you link to uses PL/JSON version 0.8.6, and it looks like they've done some biggish changes in 0.9
Version: 0.9.0
WARNING: You cannot do an easy upgrade because of changes in the API
Rewrote the API to increase speed and simplicity
Try out the examples in the latest version of the package.

Related

identifier 'DBMS_CDC_PUBLISH.CREATE_CHANGE_SET' must be declared

I am using oracle 11g express edition and I am getting the below error when trying to create a change set.
Error report -
ORA-06550: line 2, column 3:
PLS-00201: identifier 'DBMS_CDC_PUBLISH.CREATE_CHANGE_SET' must be declared
ORA-06550: line 2, column 3:
PL/SQL: Statement ignored
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
I know CDC is desupported in later versions of oracle but I think it is supported here.
Can anyone help please/
Thanks in advance!
The problem is that you are using Express Edition, which does not include Change Data Capture functionality.
https://docs.oracle.com/cd/E17781_01/license.112/e18068/toc.htm#XELIC101

Does anyone know if the Control-M job designed to run stored procedure accepts parameter with ORACLE pre-defined table type "odcivarchar2list"

The procedure is running fine in the Oracle SQL developer. But when I want to run the same procedure using Control-M database job it is showing me below error:
Job failure message:
ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'EXE_SUBPARTITION_PARAM_QRY'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
Also while passing parameter list in Control-M, it is giving Parameter type as "UNDEFINED" for using ORACLE pre-defined table type "odcivarchar2list" in my procedure.
I know that BOOLEAN type is not supported by Control-M, is this applies to oracle pre-defined types too!
Many thanks for your help.

Oracle PLSQL: different behavior with two different DBs

I wrote myself a little PL/SQL utility. Executing it (using SQL-Developer) against one DB (an Oracle XE installation on my Windows 10 Laptop) it works perfectly fine, but executing it against an other DB (also Oracle XE but on a Linux server) I am getting compile errors in my script!?!? How can that be?
The errors I get are:
ORA-06550: line 17, column 35:
PLS-00491: numeric literal required
ORA-06550: line 18, column 35:
PLS-00491: numeric literal required
ORA-06550: line 19, column 35:
PLS-00491: numeric literal required
ORA-06550: line 20, column 35:
PLS-00491: numeric literal required
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
The referenced locations are in this section at the begin of my script:
DECLARE
-- limits and boundaries
MAX_NAME_LENGTH CONSTANT NUMBER(3) := 30; -- for table and column names
MAX_VALUE_LENGTH CONSTANT NUMBER(5) := 10000; -- for column values
-- our starting point:
m_owner VARCHAR2(MAX_VALUE_LENGTH) := 'C##TEST';
m_start_table_name VARCHAR2(MAX_NAME_LENGTH) := 'XML_MELDUNG_QUEUE';
m_start_column_name VARCHAR2(MAX_NAME_LENGTH) := 'XML_MELDUNG_ID';
m_start_value VARCHAR2(MAX_VALUE_LENGTH) := '5647';
...
and the exact spot turned out to be the usages of the constants, i.e. the "...(MAX_....)"-clauses.
It seems as if on the second system the CONSTANT-definitions and the usage of these constants in further declarations does not work the same way as it does when targeting my local DB.
I am completely puzzled! What is the problem here? Why would such a PL/SQL declaration work using one Oracle XE DB but not when using another? I mean: I would understand, if some entity can not be found, but compile errors (or not) depending on the DB used???
Any idea or pointer?
Declaring variable lengths using constants is a feature added in Oracle Database 12.2.
So I suspect that your local installation of XE is 18c. And the other is 11.2.
You can verify this by running:
select * from v$version;

Identifier SDO_RDF.CREATE_RDF_NETWORK must be declared ORACLE 12c JENA

I am working with semantic (RDF/OWL) data and want to store it in Oracle 12c. I have installed all necessary softwares.
I have created a pluggable database PROJOWL and trying to create a table within that to store the RDF data.
The steps I follow are from HERE (go to 1.11)
Step 1: CREATE TABLESPACE rdf_users
DATAFILE 'rdf_users.dat' SIZE 128M REUSE
AUTOEXTEND ON NEXT 64M MAXSIZE UNLIMITED
SEGMENT SPACE MANAGEMENT AUTO;
Step 2: EXECUTE SEM_APIS.CREATE_SEM_NETWORK('rdf_users');
This is where I get the error
SQL> EXECUTE SDO_RDF.CREATE_RDF_NETWORK('rdf_users');
BEGIN SDO_RDF.CREATE_RDF_NETWORK('rdf_users'); END;
*
Error on line 1:
ORA-06550: line 1, column 7:
PLS-00201: Identifier SDO_RDF.CREATE_RDF_NETWORK must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
Not sure what to do to resolve this. I am new and trying to run the example in the documentation is the only way for me to get me understand write code for my data. Help would be appreciated.

File Browser in Oracle Apex Application

I am working on an application in which I need a file browser to attach files. To achieve this I am using
jquery.fileupload[plug-in]
as item type. However, it is giving this error:
ORA-06550: line 4, column 50: PLS-00201: identifier 'PLUGIN_JQUERY_FILE_UPLOAD.PLUGIN_RENDER' must be declared ORA-06550: line 4, column 1: PL/SQL: Statement ignored
Help!

Resources