0 Replies Latest reply on Jan 9, 2014 9:42 PM by keywee

    Multiple db connections with RESTful Services




      We have the following existing configuration:

      Oracle 11gR2 / APEX 4.2.1 / Oracle Web Server (Apache that came with 10g of the Database)


      We are currently migrating to the APEX Web listener.

      We have installed APEX Listener 2.0.5 in Standalone mode (at the moment) and created an admin account in order to carry out the administration under SQL Developer

      (all as per the standard installation documentation)


      We have configured the development database connection using the initial "apex" Database Settings through SQL Developer and this works perfectly.

      We then added RESTful services and this also works in the development database.


      We then added the uat and production databases and set the URL mappings appropriately (all through the SQL Developer GUI).  We were then able to connect to our UAT database and our Production database through the same instance of the listener.

      The URL mapping looks like this:

      Request Path  /prd

      In order to access the URL here: http://server1/apex/prd/wsprd/hr/empinfo/

      Now we are trying to add the ability for RESTful services to UAT and Production and we're stuck.


      Using the test REST services /hr requests that come with the Sample application (and accessing the Production database - wsprd is the APEX workspace and the name of the prefix set wtihin APEX itself for RESTful services)



      We keep getting the following error (after setting the "debug.printDebugToScreen=true" property - this saved our sanity during the setup!)

      503 - Service Unavailable


      Request Path passes syntax validation

      Mapping request to database pool: PoolMap [_failed=false, _lastUpdate=-1, _pattern=/prd/, _poolName=prd, _regex=null, _type=BASE_PATH, _workspaceIdentifier=wsprd, _serviceName=null]

      Applied database connection info

      Attempting to process with PL/SQL Gateway

      Not processed as PL/SQL Gateway request

      Attempting to process as a RESTful Service

      Determining if request can be dispatched as a Tenanted RESTful Service

      Request path has one path segment, continuing processing

      No Tenant Principal established yet, continuing processing

      APEX_LISTENER pool exists, continuing processing


      The actual error message amidst the Java exception messages is:

      oracle.dbtools.common.jdbc.ConnectionPoolException: The pool named: prd_al is not correctly configured, error: ORA-01017: invalid username/password; logon denied


      This seems straightforward enough, but all of the accounts within the APEX Listener setup have the correct passwords and have been tested separately through SQL Plus, and the validation step in SQL Developer passes them ok.

      There is a hashed password within the prd_al.xml file but I'm unsure as to how this is generated.


      Has anyone managed to setup multiple database connections with RESTful services on all of them?