Martin Specker
Martin Specker

Reputation: 11

APEX 24 doesn't work with ORDS 24 deployed on tomcat. ORDS itself is available with tomcat

Problem ORDS 24 is working and is avaiable through tomcat under http://localhost:8080/ords/, which gets redirected to http://localhost/ords/_/landing. However the APEX installation is not avaiable: ORDS Landing page I do not understand why.

My Installation Steps I followed the following guides: APEX and ORDS 22+ The APEX Installation on the Database worked without a Problem, everything worked as decribed. And based on Oracle Troubleshooting the installtion is correct: SELECT STATUS FROM DBA_REGISTRY WHERE COMP_ID = 'APEX'; Returns Valid when executed with SQL Manager.

The ORDS 22+ installation was a bit more tricky, mostly because it no longer let's you directly use the ords.war and a combination of company policies and admin rights. But after a few tries it worked and the installation went throught with the following settings:

set ORDS_HOME=C:\Daten\ORDS\ords
set ORDS_CONFIG=C:\Daten\ORDS\config\ords
set ORDS_LOGS=%ORDS_CONFIG%\logs
set DB_PORT=1521
set DB_SERVICE=db_service1
set SYSDBA_USER=SYS
set SYSDBA_PASSWORD=**********
set ORDS_PASSWORD=123456

%ORDS_HOME%/bin/ords
--config %ORDS_CONFIG% install 
--log-folder %ORDS_LOGS%  
--admin-user %SYSDBA_USER%     
--db-hostname db_hostname1     
--db-port %DB_PORT%      
--db-servicename %DB_SERVICE%      
--feature-db-api true      
--feature-rest-enabled-sql true      
--feature-sdw true      
--gateway-mode proxied      
--gateway-user APEX_PUBLIC_USER    
--proxy-user  
--password-stdin

This didn't work right away. The Problem was, that tomcat didn't check the JAVA_Tools_Options for the config, but we registered the config location with Tomcat and since then the ORDS is working.

Troubleshooting steps The first test was to check if static apex files from $hometomcatapps/i/ are avaiable with tomcat and they are. I tested http://localhost:8080/i/alert.gif and it works.

The Catalina log only shows errors from other things on the tomcat, also calling the landing page or a apex file also doesn't cause a new error in the log.

The online advice is to check ords_params.properties in the ords config folder. However that file doesn't exsit for me, from what I can tell, ORDS 22+ no longer has it. Just like your can no longer run the war file directly over a -jar command. But if it's elsewhere, please tell me. I checked everything in the C:\Daten\ORDS\config, it's not there.

I checked if the Database is reachable with the ORDS/ APEX Users with the same Connection parameters as defined in the ORDS, but via sqlmanager. To check for Firewall Problems. It works for both Users without a Problem.

I think I probably forgot a Setting somewhere, but I don't understand enough of Tomcat and ORDS/APEX work to find it. If you have any questions or suggestions I will be happy to oblige.

Upvotes: 0

Views: 721

Answers (2)

Kees Atos
Kees Atos

Reputation: 1

Using ORDS 24 means also use Java 21 or higher. Don't forget to use that version for Tomcat.

I installed ORDS 24 on Linux in APEX 24.1 and used Tomcat 9, but I didn't started Tomcat with that Java 21 version. After fixed that, it worked fine. And yes, Tomcat didn't show any errors.

Upvotes: 0

Loggi
Loggi

Reputation: 35

i had the same issue today and i´ve debugged for several hours until i tried to execute it by hand:

SET JAVA_OPTS="-Dconfig.url=<ords_config>"
cd <tomcat9.exe location>
tomcat9.exe

And the connection worked. Further debugging showed, it was a permission problem on the ords config folder. Setting it to "everyone" worked. Further Debugging shows, the User "Local Services" or "Lokaler Dienst" (in german), needs read access to the folder, else it cannot read the config file.

I am just curios that tomcat doesn´t show any error for not beeing able to read it

Upvotes: 0

Related Questions