As a proof of concept this morning, I decided to remove APEX from the CDB and install it in a PDB so see what works/breaks after the fact. (used a brand new, just created DBaaS instance with a 16.1.3 or 16.1.5 DBaaS version label)
Here is what I did....and some of the steps might be redundant.
1st step, stop glassfish...used
dbaascli glassfish stop
as the oracle user.
For APEX, I started by getting the APEX 5.0.3 patch from support.oracle.com and installed that into the CDB.
I then downloaded the complete APEX multi-language zip from OTN. Once that was SFTPed onto the server, i unzipped it and replaced the $ORACLE_HOME/apex with this new 5.0.3 multi-language home.
Next we uninstall APEX. CD into the new oracle home and run this script as sys
OK...all set..APEX removed from the CDB.
Now sqlplus into the DB as sys, change the container to the PDB I want
alter session set container = PDB1;
and then install APEX
@apexins.sql SYSAUX SYSAUX TEMP /i/
Few minutes later apex was installed. I then followed the install guide for 5.0 found here, change the admin password and ran the ORDS config scripts.
Now just to note, all passwords I used here for APEX_PUBLIC_USER and the ORDS scripts were the SAME passwords I created the DBaaS instance with.
After apex was configured, I moved the old images directory in the glassfish docroot to i_old and put the 5.0.3 images/JS into a new i directory.
started up glassfish
dbaascli glassfish start
and went to the dbaas monitor URL and the APEX PDB1 URL...and everything was working as expected.
Run into an issue? Please let me know!