Skip to Main Content

Español

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

[*RESUELTO*] APEX funciona, pero no sus aplicaciones | Error 404 | Problema con Friendly URLs

F.J.Nov 4 2021

Hola, espero que esto pueda ser útil a cualquiera con el problema.

Síntoma: Ayer todo estaba bien con APEX, podía tanto entrar al ambiente de desarrollo como correr mis aplicaciones APEX que usan el setting de "Friendly URLs" encendido. También podía por supuesto correr cualquiera de las aplicaciones de la galería de APEX. Hoy solo puedo ingresar y trabajar normalmente dentro del ambiente de desarrollo APEX pero todas las aplicaciones que intento ejecutar, sean mías o de la galería, dan el mismo error, por ejemplo:

404 Not Found
2021-11-04T16:44:46.906Z | t3mTzFPjTpTi7_Mrgv-TqQ | 

Nada se cambió en la configuración de APEX o del ORDS, ayer noche todo funcionaba bien, hoy por la mañana ya no.

Solución alterna: Una solución inmediata para poder volver a correr las aplicaciones APEX es apagarles el uso del "Friendly URL". Editar las propiedades de la Aplicación que se desea correr y apagar el switch de la propiedad "Friendly URLs". Esto funciona, permite volver a ejecutar las aplicaciones, pero no resuelve el problema de fondo real y además nos impide utilizar los "Friendly URLs" porque en cuanto encendamos el switch de nuevo la aplicación volverá a presentar el problema.

Problema de fondo: Al menos en mi caso, el problema de fondo fue la expiración de los passwords de 3 de los usuarios internos creados por el APEX y el ORDS en su instalación, en especial uno de esos usuarios. Los 3 usuarios son: ORDS_PUBLIC_USER, APEX_LISTENER y APEX_REST_PUBLIC_USER. Esto tiene sentido y es consistente con el hecho de que ayer todo funcionaba y hoy ya no dado que expiraron las claves de esos usuarios.

Curiosamente, si el ORDS_PUBLIC_USER no ha expirado, muy probablemente no estarán teniendo el problema y no estarán aquí buscando solución, aún cuando los otros 2 usuarios sí hayan expirado. Por su parte, si los 3 han expirado, como en mi caso, el problema se presenta y la solución de fondo es bastante sencilla: reiniciar las claves de al menos los 2 usuarios APEX.

SOLUCIÓN: Conectarse a la base de datos como SYSDBA (usando el SQLplus o el SQL Developer, o TOAD, etc) y ejecutar el siguiente query para verificar si los usuarios tiene su cuenta/clave expirada:

  SELECT username, account_status 
   FROM dba_users 
  WHERE account_status LIKE '%EXPIRED%'
  ORDER BY username;

Si el usuario ORDS_PUBLIC_USER no aparece en los resultados probablemente no esté teniendo el problema, pero si aparece y aparecen también los usuarios APEX_LISTENER y APEX_REST_PUBLIC_USER haga lo siguiente para reiniciar sus claves:

  alter user APEX_LISTENER identified by <nueva clave>; -- Yo usé la misma anterior
  alter user APEX_LISTENER account unlock;

  alter user APEX_REST_PUBLIC_USER identified by <nueva clave>; -- Yo usé la misma anterior
  alter user APEX_REST_PUBLIC_USER account unlock;

Una vez hecho esto, todas mis aplicaciones APEX, al igual que cualquiera de la galería, volvieron a correr sin problemas y usando además su propiedad de "Friendly URLs" encendida de nuevo. (Nota: quizás sea necesario reiniciar el Servicio del server sobre el que corre el ORDS, en mi caso Tomcat)

Yo no necesité reiniciar la clave del usuario ORDS_PUBLIC_USER aquí, pero si desea hacerlo tenga muy presente el posible impacto en la instalación completa de ORDS. Si lo requiere, es mejor que lo haga re-instalando o validando el ORDS para que él se encargue de hacerlo de la mejor manera.

Espero que esto le resuelva el problema a cualquiera que se le presente.

Saludos,

Fernando.

Comments
Post Details
Added on Nov 4 2021
0 comments
2,044 views