Hi everyone,
I’m trying to call JasperReports Server REST endpoints from Oracle APEX using APEX_WEB_SERVICE.MAKE_REST_REQUEST, but I’m receiving two different errors depending on the URL. The same URLs work correctly when tested from inside the Docker container using curl.
Below are all environment details and the exact errors.
Environment
-
Host OS: Ubuntu 22.04
-
Containers: Docker Engine (latest)
-
Database Type: Oracle Autonomous Database (Free) running inside a Docker container
-
Oracle Database Version: Oracle Free / 23ai (Docker image: oracle-adb-26ai)
-
Oracle APEX Version: 24.2 (APEX_240200)
-
ORDS/APEX: Preconfigured inside Oracle Autonomous Database Free Docker image
-
Pluggable DB: MYATP
-
JasperReports Server: Community Edition running in a separate Docker container
-
Docker Network: All containers running on the same custom Docker network
-
Internal Hostnames:
- JasperReports →
jasperreports
-
Connectivity Check: From inside the DB container:
-
docker exec oracle-adb-26ai curl -v -u jasperadmin:jasperadmin \
http://jasperreports:8080/jasperserver/rest_v2/info
→ Connectivity is OK.
-
Reverse Proxy: Traefik / Nginx exposing HTTPS endpoint https://reports.local
-
SSL Wallet: Not yet configured inside the Autonomous Database container
Issue 1 — ORA-20987 when calling HTTP internal Docker hostname
l_response := APEX_WEB_SERVICE.MAKE_REST_REQUEST(
p_url => 'http://jasperreports/jasperserver/rest_v2/info',
p_http_method => 'GET',
p_username => 'jasperadmin',
p_password => 'jasperadmin'
);
Result:
ERR: ORA-20987: The requested URL has been prohibited. Contact your administrator.
APEX blocks the request even though Docker networking works fine.
Issue 2 — ORA-29273 when calling HTTPS through reverse proxy
l_response := APEX_WEB_SERVICE.MAKE_REST_REQUEST(
p_url => 'https://reports.local/jasperserver/rest_v2/serverInfo',
p_http_method => 'GET',
p_username => 'jasperadmin',
p_password => 'jasperadmin'
);
Result:
ORA-29273: HTTP request failed ORA-06512: at "SYS.UTL_HTTP", line 1189
Likely due to:
- Missing Oracle Wallet
- Self-signed certificate not trusted
- APEX network restrictions
Summary
- Docker containers can communicate normally (tested with curl).
- APEX generates
ORA-20987 when accessing internal HTTP URLs.
- HTTPS endpoint returns
ORA-29273, probably due to missing wallet/certificate.
- Since the database is Autonomous Database running in Docker, some APEX network ACLs and URL restrictions may still apply.
Administrator Oracle APEX


Questions for the community
- What configuration in APEX 24.2 triggers
ORA-20987?
- Is there a built-in URL allowlist that must be updated?
- Does Autonomous Database Free (Docker version) enforce stricter outbound rules?
- For the HTTPS error (
ORA-29273):
- Should I configure an Oracle Wallet inside the Autonomous Database container?
- How do I correctly trust a local HTTPS domain such as
reports.local?
- For Docker deployments:
- What is the recommended APEX/UTL_HTTP configuration to allow cross-container REST calls?
- Any documentation or examples for Autonomous Database running on Docker?
Thank you in advance for any help!