Friday, September 20, 2019

Free Oracle Cloud: 5. Setup APEX in ATP and create first APEX app

This post is part of a series of blog posts on the Best and Cheapest Oracle APEX hosting: Free Oracle Cloud.

Login to your Oracle Cloud Account. Once in, navigate on the left hamburger icon to Autonomous Transaction Processing and select the Autonomous Database. In the overview screen click the Service Console:

Make sure you allow pop-ups as it opens a new tab.
You will get a graphical overview, in here you want to click on the Development link.

There you find the link to Oracle APEX:

When you click the link the first time, it might take a bit of time as APEX is being configured behind the scenes. You first enter your cloud account password.

As it recognises you are logging in the first time, it will prompt you if you want to create a new Workspace. A Workspace is a space where your Oracle APEX applications live.

Click the button and it will prompt to create the Workspace.

Hit the Create Workspace button and you are good to go :)

As you might not click the Create Workspace the first time, I also want to show you how to create a new Workspace moving on.

When you click the Oracle APEX link in the Development dashboard again, it recognises Oracle APEX is already setup and it will prompt you in which workspace you want to login to. You want to login into the INTERNAL workspace with the ADMIN user and your cloud account password (same credentials as with SQL Developer Web).

You will arrive in the Instance Administration screen. Compared to the on-premises version of Oracle APEX, the functionality is a bit more limited as the Oracle Autonomous Database is pre-configured and managed by Oracle. So you can't tinker, for example, with the Security settings or provisioning of workspaces.

The first thing you want to do is create a new Workspace, a place where you will build your Oracle APEX app. In the Manage Workspaces menu, click on Create Workspace:

A modal dialog will appear where you can enter a new or existing database user, password and workspace name. In the following screenshot I want Oracle APEX to create a new database user called CLOUD linked to the workspace CLOUD.

Once that is provisioned, you can sign-out of the INTERNAL workspace, and sign-in to the new created workspace. As workspace name you enter the one you created above, username is the database user and the password is the one you provided when creating the workspace.

And voila... we are in Oracle APEX and we can start to create our APEX applications.

I'm not adding all screenshots to create a first Oracle APEX app in this blog post, but if you are new to APEX and want to see step by step how to start, check out the Oracle APEX Tutorial on YouTube by Caleb Curry. In the next video he walks you how to create an APEX app from a File.

There's one thing that is important when you are using the Oracle Cloud and want to do REST requests: only HTTPS requests are allowed, so make sure you always use https.

The same counts if you want to use APEX Office Print in the free Oracle Autonomous Database Cloud to export the data in the format you want (PDF, Excel, Word, Powerpoint, HTML, ...), use the HTTPS url or the HTTPS url of your own environment.

Another thing to know is that you can't send emails out of the Free Oracle ATP Cloud with apex_mail. In case you need to send out email, I would recommend to integrate your Oracle APEX app with Mailgun, MailChimp or others.

Update on 26-SEP-2019: you can actually use APEX_MAIL, but you first have to configure the mail server as specified in the documentation.

In the post we configured Oracle APEX, so we can create our APEX apps. One of the things many people want to do is to setup a custom domain, so for example links to an APEX app. Oracle calls this 'vanity URLs', but that is not yet available, but coming very soon. But, no worries, you can actually already do a custom URL :) In the next post I will talk about setting up a Compute instance in the free Oracle Cloud, which makes our APEX hosting more complete, so we can have an on-premises AOP install, a web server to support custom urls etc.


Paul Alsemgeest said...

Hello Dimitri,
I've been creating a dummy application in Apex last wednesday, and it works like a charm. Very quick also.

What I don't see, what URL should we use to publish an application?
What I did, is from 'run application' copy the url, and cut all session info after p=100. Is that a valid solution?

Dimitri Gielis said...

Hi Paul,

What you did is correct.

it's basically your oracle url /f?p=APP_ID or /f?p=APP_ALIAS


Fred said...

I've followed everything exactly, but when i click on Oracle APEX in the database console, to create a new APEX app, its just says:

The connection pool named: |ocid1.tenancy.oc1....... is not correctly configured, due to the following error(s): No more data to read from socket

Did I do something wrong? or is it on Oracles end? Been trying all day, I cant get to an APEX workspace.

Dimitri Gielis said...

Hi Fred,

I didn't have any issues.

I saw on twitter some others have this issue too today.
Apparently for some after refreshing the page a few times it worked.


Lopa_K1Ng said...

Hi Dimitri,

I'm having the same issue. First database I've created, when trying to access Apex I get the error message:

Is there anything required to be configured before using oracle apex?

503 Service Unavailable -> The connection pool named: |xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|re| is not correctly configured, due to the following error(s): Unable to start the Universal Connection Pool: oracle.ucp.UniversalConnectionPoolException: Failed to create initialPoolSize connections while starting a pool: oracle.ucp.UniversalConnectionPoolException: Failed to create initialPoolSize connections while starting a pool: java.lang.IllegalStateException: unable to start connection creation task

thanks for your help!

Anonymous said...

Hi Dimitri,

I'm having the same issue.
Also have a look here:
So far this stuff is rather frustrating.
Mails to come seem to be send arbitary - or even more worst never.
Very strange - and I think there is lot of space for improvements...
Anyway thank you very much for your blog and contribution!
Best Ragards

Dimitri Gielis said...

Sorry to hear you have issues. It looks like the FREE service is really popular, maybe a bit more than Oracle anticipated?
I was really impressed with the service so far, but yes I agree there's still room for improvement. It looks like Oracle is still making changes and improvements (e.g. custom domains), so I would say don't give up just yet...

As it's a new service, give it some time to ease out and for them to make it the perfect experience ;)
I guess Oracle is learning a lot with all the new users on the Cloud.

All the best,

Shail said...

Hi Dimitri,

I subscribed to Always Free ATP data base and Configured APEX also. Now, I am trying to print XML(BI Publisher) report via APEX page but it is not happening and giving error below. I went to APEX admin and checked "Manage Instance" but I could not access the XML publisher configuration in APEX. Please help how can I get RTF layout imposed on data via APEX page.

Technical Info (only visible for developers)
is_internal_error: true
apex_error_code: APEX.UNHANDLED_ERROR
ora_sqlcode: -20001
ora_sqlerrm: ORA-20001: The printing engine could not be reached because either the URL specified is incorrect or a proxy URL needs to be specified. ORA-06512: at "APEX_190200.WWV_FLOW_PRINT_UTIL", line 172 ORA-06512: at "APEX_190200.WWV_FLOW_RENDER_QUERY", line 1796 ORA-06512: at "APEX_190200.WWV_FLOW_RENDER_QUERY", line 1881
component.type: APEX_APPLICATION_PAGES 104000000000 Global Page - Desktop"


Dimitri Gielis said...

Hi Shail,

I don't think Oracle allows you to print. I would recommend looking into APEX Office Print (AOP).

See my blogpost how to integrate it:

Hope that helps,

Shahadat said...

When I creating a workspace on rac the database user do not show any name. What is the reason please?


Anonymous said...

when I am trying to create another user for the first time it's working fine after the same day it gives me an error log in failure. I try to reset it but same error.

Anonymous said...

Hi Dimitry,
My free Autonomous database (20 GB) is decreasing it self. I am still in development phase. I am surprise to see this. can you please suggest.

Anonymous said...

Is creating a custom URL still not available?

Dimitri Gielis said...

Creating a custom URL is available now.