Skip to Main Content
Feature Request FR-2428
Product Area Application Builder
Status CLOSED

42 Voters

SPA (Single Page Application)

fahad Public
· Apr 11 2022

Idea Summary
Single Page Application is the demand of the hour. Business users are started requesting to go back in oracle forms as they don't load/refresh on page opening or get the functionality similar like Oracle Forms.

Use Case
The page should not refresh or reload the page when click on any link in the menu.

Preferred Solution (Optional)
We've tried to achieve this by using third party Java Script libraries which sometimes work fine but not very good at mobile view.

The Oracle APEX should have this feature built-in available which should be compatible with the framework and easier to consume the functionality.

We reviewed this idea carefully, and while it was interesting, we concluded that it is unlikely to make its way into APEX in the foreseeable future.

Comments

Comments

  • john.snyders APEX Team OP 3.1 years ago

    This is very similar to https://apex.oracle.com/ideas/FR-2435

  • stew stryker OP 3 years ago

    To Fahad's original post, I agree this would be a great declarative feature, though I'm not sure how well this feature would work on a mobile platform?

  • fahad OP 2.8 years ago

    For mobile we can have separate page and menu, which will be redirected from home screen based on mobile device screen ratio.

    At least introduce some enterprise application feeling in Apex by adding SPA features, mobile perspective could be enhanced later.

  • stew stryker OP 2.4 years ago

    Jayson Hanes brought this feature request up in the December 2022 Apex Office Hours video. He said that you can make your Apex application an SPA out of the box and described briefly how he did it.  As I understood it he created tons of regions, each one being a virtual “page”, then he used Server-Side Conditions to hide the regions (pages) he didn't want to see.

    If I got that right, that method of having seemly like a maintenance challenge (to put it gently).

    I think what most developers are looking for is how FOEX implemented SPA, where each application page is an Apex page, and your “Home” page includes a region that loads those menu pages in an iFrame. So multiple Apex programmers can work together on different site pages, and those get displayed within the Home page iFrame. 

    Based on my experiences with FOEX, inter-page communications can become an issue, but it's not a major issue.

    If the former FOEX team members (now Oracle APEX team members) add nothing else to APEX, it should be SPA. 

    And I know they'll add lots more to the product over time. :-)

  • jayson hanes Admin OP 2.4 years ago

    I find my SPA (which is actually an app with very few pages, but indeed has 1 major SPA page) - isn't really that much of a challenge to maintain.. page designer is really brilliant. If anything, it's more the learning curve for anyone else to follow behind to learn what was done, and why.

  • stew stryker OP 2.4 years ago

    I bow to your superior intellect. (seriously)

    I agree the Page Designer is great, but I'm not sure if I'd want to inherit maintenance that application. ;-) 

    Maybe it's my ADHD, but I really like having a limited set of options on my page when I develop it. Just like I prefer developing with PL/SQL packages, then referencing one of their routines from a calling program (when needed).

  • jayson hanes Admin OP 2.1 years ago

    So, the use of the term “SPA” is partly to blame for a lack of consensus on how this would need to be approached. We know that there are things that can be improved in this regard, such as support for refreshing forms, LOV's etc, but it's not necessarily aligned with a single page application development approach. 

    In light of this, we're closing this idea, as it's not quite the right fit - but rest assured that such functionality is understood, and I think it's safe to say it will be part of the continued evolution of APEX.

  • fahad OP 1.5 years ago

    @jayson hanes I was surprised to find this closed, given that the FOEX team is now a part of Oracle. They ought to have applied their expertise towards enhancing the APEX platform. However, FOEX contributes nothing apart from making their product available for download on a license basis in oracle cloud. 

    As developers, we had high expectations when FOEX merged with Oracle, but it appears that no substantial improvements will be made.

    We've been successful in using third-party libraries and haven't encountered any of the issues mentioned in the various responses above. It would be ideal if this feature could be incorporated declaratively into the framework itself.

    However, we are encountering significant resistance from the professional end-users who are familiar with enterprise products. They are displeased with the page refresh process.