We utilize Apache Tomcat and Apache HTTPD to run our web server for our Oracle APEX application. Recently, ORDS 3.0.6 was released, and since I had heard at Kscope16 that, finally, there is a production ready ORDS 3.0.x, namely ORDS 3.0.6, I decided to install ORDS 3.0.6 within our DEV and TEST environments.
Installation / Upgrade instructions (Windows):
1) delete old ORDS files (not required in a new install) and Tomcat must be already installed (which means a JDK is already installed)
2) place the ORDS files and directories in C:\ORDS
3) open command prompt, navigate to C:\ords
4) java -jar configdir c:\ords
5) java -jar install advanced
6) enter the name of the database server
7) enter the database listen port
8) enter 1 to specify the database service name, or 2 to specify the database SID (we use database SID)
9) enter the database SID
10) enter 1 if you want to verify/install Oracle REST Data Services schema or 2 to skip this step (we want to verify/install Oracle REST Data Services)
11) enter the database password for ORDS_PUBLIC_USER and confirm the password
12) enter 1 if you want to use PL/SQL Gateway of 2 to skip this step (we want to use PL/SQL Gateway)
13) enter the PL/SQL Gateway database user name
14) enter the database password for APEX_PUBLIC_USER and confirm the password
15) enter 1 to specify passwords for Application Express RESTful Services database users or 2 to skip this step (we want to specify passwords)
16) enter the database password for APEX_LISTENER and confirm the password
17) enter the database password for APEX_REST_PUBLIC_USER and confirm the password
18) The proper ORDS schema is installed if it isn't already there.
19) enter 1 if you wish to start in standalone mode or 2 to exit (we want to exit)
20) copy the ords.war file into the Tomcat webapps directory and Tomcat will automatically deploy it.
21) Congrats ORDS is setup and deployed.
However, there is an issue with ORDS 3.0.6 and Chrome. You will get a Cross Origin Sharing 403 error if you attempt to login to either the APEX developer or your app. To correct this issue, add RequestHeader set Origin http://localhost:8080 in the Apache HTTPD http.conf file. The other option of solving the issue is to add ProxyPreserveHost On to the Apache HTTPD http.conf file. That option did not work well for me though, as it messed up the redirect functionality I had setup within Apache.
reference: https://twitter.com/chrisfreeman99/status/751462158991372289