Esta es una alianza que me dió muy buenos resultados, estuve experimentado con otros productos como Glassfish. En mi caso me resultó mas familiar usar Apache Tomcat como servidor de Java, su instalación es bastante simple y hacer el "deploy" con Ords (Oracle rest data services) se sintetiza en dos simples pasos.
Ambiente de Instalación: Linux Centos 7, sistema operativo muy compatible con la base de datos Oracle ya que genéticamente proviene de la linea de Oracle Linux/Redhat.
La presente documentación se inicia a partir de disponer Centos con Oracle Express 11g ya instalados y también algo que es de extrema importancia, la instalación de Java (Java Distribution Kit jdk), hay bastante documentación en la Red. En este servidor tengo instalada la versión jdk1.8.0_71 si no me equivoco es la última que encontré.
Pasos:
1.- Instalación de Apex 5:
2.- Instalación de Apache Tomcat 7
3.- Instalación de Ords
4.- Deploy de Ords con Tomcat
1.- Instalación de Apex 5 para Ords.-
Descargamos de www.oracle.com el último Apex que a la fecha es el 5.0.3
Una vez descargado el zip como usuario "oracle", lo descomprimimos en:
/home/oracle cuya ruta quedará como /home/oracle/apex
a) Crear el tablespace Apex en la base de datos:
sqlplus / as sysdba
create tablespace apex datafile '/u01/app/oracle/oradata/XE/apex_01.dbf' size 200M reuse autoextend on next 10M maxsize 1000M logging extent management local segment space management auto;
b) Correr el sql apexins.sql que instala Apex.
SQL @apexins.sql APEX APEX TEMP /i/
c) Una vez instalado el script sale del entorno sqlplus, hay que volver a conectarse:
sqlplus / as sysdba
Cambiar la contraseña de admin:
SQL @apxchpwd.sql
d) Preparamos Apex para ords
SQL>@apex_rest_config.sql
e) Ponemos en Cero el puerto 8080 que Apex configura por defecto, para no interferir
con los puertos de Apache.
SQL exec dbms_xdb.sethttpport(0);
f) Instalar imágenes, este paso no lo encontré en otras documentaciónes acerca de
apex para ords, no estoy seguro pero considero necesario, de todas maneras no tuve
ningún inconveniente.
SQL @apxldimg.sql /home/oracle
g) Desbloquear el usuario anonymous y usuario de ords
SQL alter user anonymous account unlock;
SQL alter user apex_public_user account unlock;
--- Fin de Paso 1 ---
2.- Apache Tomcat 7
a) Crear usuario tomcat y configurar el entorno:
useradd tomcat
vi /home/tomcat/.bash_profile
export JAVA_HOME=/home/tomcat/jdk1.8.0_71
export CATALINA_HOME=/home/tomcat/apache-tomcat-7
export CATALINA_BASE=$CATALINA_HOME
export CATALINA_PID=$CATLINA_HOME/tomcat.pid
export CLASS_PATH=$CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/tomcat-juli.jar
a) Descargar de la página de Apache el archivo zip, en esta instalación
descarqué apache-tomcat-7.0.65.zip
unzip apache-tomcat-7.0.65
Quedando tomcat instalado en:
/home/tomcat/apache-tomcat-7.0.65
b) Confituracion de Tomcat
archivos a modificar:
usuario, contraseña y derechos:
/home/tomcat/apache-tomcat-7.0.65/tomcat-users.xml
datos del servidor: ip, puerto
/home/tomcat/apache-tomcat-7.0.65/server.xml
Iniciar tomcat:
$CATALINA_HOME/bin/startup.sh
Para tomcat:
$CATALINA_HOME/bin/shutdown.sh
--- Fin de Paso 2 ---
3.- Instalación de Oralce Rest Data Services (Ords).-
Los siguientes procesos se deben hacer como usuario tomcat:
a) download ords 3 (en este caso) de www.oracle.com
/home/tomcat/ords.3.0.0.343.07.58.zip
b) unzip ords.3.0.0.343.07.58.zip
mv /home/tomcat/ords.3.0.0.343.07.58 /home/tomcat/ords.3
renombramos la carpeta para que el nombre sea mas corto.
creamos la carpeta donde vamos a configurar ords
mkdir /home/tomcat/ords-conf
configuramos la ruta de configuracion de ords
cd ords.3
java -jar ords.war configdir /home/tomcat/ords-conf
instalamos ords: java -jar ords.war
Configuramos los datos: host (puede ir la ip o localhost)
puerto: 1521
sid: en caso de trabajar con oracle express, si no es mas seguro poner
el servicio (sid.miservidor.com)
A la pregunta: instalar pl/sql gateway (1) o omitir(2)
responder 1, instalar pls/sql gateway ya que vamos a trabajar con apex.
Luego nos pide las contraseñas de los usuarios administradores:
apex_public_user
apex_listener
apex_rest_public_user
--Fin-de-la-instalacion.
Ultimo paso: Deploying Apex - Desplegando Apex con Apache Tomcat
Crear una carpeta /i/ en la ruta:
CATALINA_HOME/webapps/i
Copiar el contenido de la carpeta apex/images a la carpeta i/ de Tomcat:
cp -rf /home/oracle/apex/images/* $CATALINA_HOME/webapps/i/
--Fin-del-Deploy
http://localhost:8080/ords/
Problemas comunes:
Puede que nos encontremos con:
Oracle Rest Dataservices 404 Not Found
Para ver que esta pasando, cambiamos a modo debug en el archivo
defaults.xml que esta dentro la carpeta de configuración de ords.
Comprobar que el usuario apex_public_user no esta lockeado.
sqlplus apex_public_user/password
Fin---------------------------------------------------------------