The text in the APEX install guide for static images has a link to the ORDS install guide. Therefore, I assume that this problems belongs in this forum?
When I installed APEX 18.2 I extracted all the files and then from SQL PLUS (SYS as SYSDBA) I ran the statements:
@apexins SYSAUX SYSAUX TEMP /i/ ;
This has always worked with prior releases.
The standalone.properties file is located in C:\app\product\ords\standalone\ The contents are:
#Mon Mar 11 08:12:28 EDT 2019
The ords_params.properties file is located in C:\app\product\ords\params\ The contents are:
#Mon Mar 11 08:29:24 EDT 2019
Is there anything wrong with the contents of these files?
I am by far no expert of APEX and ORDS (my disclaimer especially since I will be opening my own issue here today). Nonetheless I have also had issues with the standalone.properties file. I've typed things in there that didn't work and I've also seen changes in there (I watched the timestamp).
Try working around this file at first by using some switches like this:
java -jar ords.war standalone --apex-images C:\app\product\apex\images
It might be worth trying to run the standalone command and adding in each parameter by hand too. It's a lot to type or paste but it eliminates that properties file as the source of your problems.
java -jar ords.war standalone
Other helpful info: java -jar ords.war help standalone
Hello user12094070. Thanks for looking at this.
I tried your suggestion and got the same result. at C:\app\product\ords\ I input the following:
java -jar ords.war standalone --port 9090 --apex-images c:/app/producdt/apex/images --context-path /ords --static-context-path /i
I still get the warning message. I can continue on to Apex Admin where the screens appear normal, but the warning concerns me and I hate to proceed further. I fear the problem will show up later on.
Do you have other suggestions?
Thanks for responding. I hadn't seen that link, so this is very helpful. I started following it, but ran into a problem. When I run @apex_rest_config.sql I get an error similar to one that was reported in January 2019. Apex 18.2 - GetConsoleMode failed, LastError=|6| while running @apex_rest_config.sql for ORDS
I indicated that I have the same question in that post. Any idea why we're getting the error: GetConsoleMode failed, LastError=|6|
Thanks for looking at this.
I didn't look at your documentation links. However I did install APEX in its own home directory (i.e. E:\apex182 )and I also installed ORDS (E:\ORDS ) in its own home directory. I know that seems like it shouldn't be done but the reason is that if I upgrade the Oracle 18c ,I do not overwrite the ORDS or APEX installs within it. Folks on this forum seem to feel this is a good practice. Maybe its worth trying that?
Second - rename that .properties file to something like .old and trying running things again. Don't reference it when you start up ORDS the first time. I know I mentioned that but that file can be troublesome. Try to get it to run without it until its up and running.
I did not need to manually create the APEX_LISTENER or APEX_REST_PUBLIC_USER accounts. I'm using Oracle 18c as my database. If you are using Oracle 12 maybe they are not there by default? I can't recall.
Another useful script that you may find yourself using at some point is reset_image_prefix.sql.
By the way apex_rest_config.sql creates the APEX_LISTENER and APEX_REST_PUBLIC_USER. You should not need to do that using APEX 18.2. I just looked at the .sql file. If you are using pluggable databases make sure you ran it in the correct place.
Sorry I had to correct that in my original post after looking at my documentation. You probably read it before I finished editing it.
I pointed it to the images directory under E:\apex182 not the oracle db home. In my case it was E:\apex182\apex\images
I have my Oracle components in the following folders:
Is there anything inherently wrong with this folder structure?
I installed the components in this order
Apex 18.2 (using SQLPLUS> @apexins SYSAUX SYSAUX TEMP /i/
Once installed, using SQLPlus I executed:
- alter session set "_ORACLE_SCRIPT"=true;
- ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK;
- ALTER USER APEX_PUBLIC_USER IDENTIFIED BY new_password;
- @apex_epg_config.sql C:/app/product (This accesses the subordinate APEX/IMAGES directory)
- Alter User Anonymous Account Unlock;
From File Explorer I used Extract All on ords.126.96.36.199.09.40.zip to the folder C:\app\product\ords
From and elevated command prompt I ran java -jar ords.war install advanced
- When prompted for Configuration Data I supplied C:\app\product\ords
- The install program responded with:
- Your database connection is to a CDB. ORDS common user ORDS_PUBLIC_USER will be created in the CDB. ORDS schema will be installed in the PDBs.
- Root CDB$ROOT - create ORDS common user
- PDB PDB$SEED - install ORDS 18.4.0.r3541002 (mode is READ ONLY, open for READ/WRITE)
- PDB XEPDB1 - install ORDS 18.4.0.r3541002
- I started in standalone mode, changed the port to 9090
- When prompted for the Apex Static Resources Location I responded with C:\app\product\apex\images
It seems that ORDS_PUBLIC_USER is created in the CDB and the ORDS schema is created in the PDB. I don't seem to have much control over that choice. Would you change any of the installation steps I used?
Thanks again for looking at this.
These were the steps I took.
create a tnsnames.ora entry for the pluggable database.
test the pluggable tnsnames.ora entry OUTSIDE of the server using the SYS account.
sqlplus / as sysdba
alter session set container=pluggable_db_name
e:\apex18.2\apex directory - using SQLPLUS> @apexins SYSAUX SYSAUX TEMP /i/
Verify apex install:
select status from dba_registry where comp_id='APEX';
ALTER USER APEX_PUBLIC_USER IDENTIFIED BY password ACCOUNT UNLOCK;
ALTER USER anonymous ACCOUNT UNLOCK;
ALTER USER xdb ACCOUNT UNLOCK;
ALTER USER flows_files ACCOUNT UNLOCK;
Rem ALTER system SET shared_servers=5 scope=both;
@apex_epg_config.sql E:\apex182 (apex installation home - my images are at: E:\apex182\apex\images)
commit; (may or may not be needed)
create the ords.war file at this point.
Good practice is to install the ORDS in its own home (E:\ords for example).
I see a lot of folks on this forum that recommend this approach.
Test out all of your accounts used/unlocked too.
Note that I did an alter session set container before I ran all of .sql scripts
above. Use the pluggable passwords in the
ORDS.WAR INSTALL ADVANCED command.
You can also validate the ords install and look for any issues:
java -jar E:\ords\ords.war validate
Thanks very much Thompson. It's now working perfectly. I had not set the container to XEPDB1 prior to installing APEX. That made all the difference. It seems that the users associated with APEX and ORDS must be in the same PDB container (e,g, XEPDB1). The install documentation for Apex 18.2 doesn't show the statement alter session set container=XEPDB1 as an example or option. I got an error with @apex_rest_config when I had the APEX and other installs set to the default container (CDB$ROOT).
Just like you suggested, after installing Apex 18.2 from the same SQLPlus (set to container=XEPDB1) I ran:
When I installed ORDS I used
Configuration Data = C:\app\product
Database Service Name = XEPDB1
Apex Static Resource Location = C:\ app\product\ apex\images
I should mention that after installing XE 18C I adjusted the TNSNAMES.ORA file:
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(SERVER = DEDICATED)
(SERVICE_NAME = xepdb1)
Thanks again for all your help!
I've tried to figure this out for 2 months. This worked perfectly; thank you!