New Features in Oracle Visual Builder

Here’s an overview of new features and enhancements added recently to improve your Oracle Visual Builder experience.

Topics:

As soon as new and changed features become available, Oracle Visual Builder instances are upgraded in the data centers where Oracle Cloud services are hosted. You don’t need to request an upgrade to be able to use the new features—they come to you automatically.

Note:

Visual Builder refers to Oracle Visual Builder running natively on Oracle Cloud Infrastructure (OCI) (previously referred to as Oracle Visual Builder Generation 2).

Note:

Classic applications created in earlier versions of Visual Builder use a structure that isn't compatible with the visual application structure now used in Visual Builder. No further feature development work is planned for Classic applications, and only critical bug fixes will be addressed. Oracle recommends that you update your Classic applications to use the visual applications approach, which provides a much more robust functionality for creating sophisticated apps.

For the moment, you can use your Visual Builder instance to manage Classic applications, but this option will be disabled by default in new instances starting soon. You can use your existing instance to export Classic applications and then import them as visual applications to migrate the business objects, but be aware that there are no migration capabilities for the web or mobile UIs. See About Classic Applications.

Release 25.10.1 - October 2025

Change Description
Changed upgrade policy We've expanded the number of runtime versions supported by a visual application from three to four, so you can now publish an app built on the current runtime version and continue developing it in the Designer for the previous four versions. In other words, when updating an app in the Designer, its runtime libraries are supported for about a year, after which you'll be prompted to upgrade. See Upgrade Policy.
Notifications A new Notifications icon in the header now brings up a Notifications panel, where you can view notifications received over the past two days. Use the Notifications panel to easily access all your notifications, especially those that automatically clear after five seconds in the bottom right corner. When you've got unread notifications, the Notifications icon will be badged based on the type of notification received. These notifications also help you better track the status of in-progress tasks. Instead of multiple notifications for related tasks that need some time to complete, you now see a progress bar indicating that the task is running in the background. See Tour the Designer.
Global functions in a visual application If your application routinely uses similar JavaScript functions to transform or manipulate data, you can now extract those functions as global functions and reuse them in pages (fragments or any other container). See Add JavaScript Modules As Global Functions.
Resource optimization by default

The process of sharing or deploying your visual application now automatically optimizes application resources to improve performance; previously, you had to choose to optimize your application. Optimization minifies resources such as stylesheets and HTML and JSON files, and creates RequireJS bundles in an embedded build server.

By default, all application resources (except images) continue to be included in an optimized resources bundle, but you can define your own configuration to include and exclude resources as before. The schema used in build.json, however, has changed. See Customize Optimization. Also, if you use Grunt tasks to optimize your application, you must migrate your customizations from Gruntfile.js into build.json as the default optimization configuration will not include your custom configuration. See How to Migrate gruntFile.js Configuration Into build.json.

While optimization is recommended to improve your application's performance, you have the option to temporarily disable optimization, say to troubleshoot file access issues that occur because of optimizing your application. See Suppress Optimization.

Default URL supported for deploying apps mapped to custom endpoints If you've configured custom endpoints for your Visual Builder instance, you're no longer required to use the instance's custom endpoint URL to deploy apps mapped to the custom endpoint. Now, you can use either the default URL or the custom endpoint URL to deploy your apps with a vanity URL. See Configure Support for a Custom Domain.
Business object improvements
  • UI changes for business objects

    In an effort to streamline configuration, a business object's definition now features two new tabs: a Relationships tab for creating and managing relationships, and a Settings tab for configuring general settings and application setup data. The Overview tab, which previously contained these settings, has been removed. Likewise, endpoint settings that were previously under the Overview tab are now in a distinct Settings tab. See View, Create, and Edit Business Object Relationships, Manage Business Object Settings, and Access a Business Object's Resource APIs and Endpoints.

  • Relationship between business objects based on DB tables

    It's now possible to create relationships between business objects based on DB tables. When you first create a parent business object, then a child, their relationship is automatically created. For other scenarios, you can create relationships either manually or by adding a referenced field. See Create a Relationship Between Business Objects Based on a DB Table.

UI changes for backends, service connections Settings that were previously found on the Overview tab for a backend, service connection, and endpoint, have been moved into a new Settings tab. As a result, the Overview tab has been removed. See Manage Backends in Your Visual Application and Edit a Service Connection.
Action Chain enhancements
  • Support to call JavaScript action chain from a JSON action chain

    To help ease the transition to JavaScript-based action chains, you can now call JavaScript actions from your existing JSON actions. See Add a Call Action Chain Action.

  • Ability to search your action chain diagram

    The Action Chains editor in Design mode now has a search box at the top of the canvas to help you find text within your action chain. See Create Action Chains in Design Mode.

  • Auto-populate response data for Call REST action mocks

    When testing a Call REST action in a chain, VB Studio now automatically sends a request, captures the response, and populates the mock action. All you need to do is enter the required parameters. Previously, the only way to populate mocks for a Call REST action was to manually make a REST call using the Endpoint tab. See Test Action Chains and Create a Test for a Test Case.

  • Ability to reset dirty data status of specific variables

    A new Variables to Reset property in the Reset Dirty Data Status action now allows you to reset the dirty status of only the variables you want. See Add a Reset Dirty Data Status Action.

  • Usability improvements for Run in Parallel, If/Else, Try/Catch, and Switch actions

    • Run in Parallel: You can add an empty block at the bottom by right-clicking the top-level If node. You can also add an empty block at a specific position by right-clicking any block. See Add a Run In Parallel Action.

    • Else-If: You can add an empty If or Else-If block at the bottom by right-clicking the top-level If node. Also, you can add an empty Else block before or after an Else-If block, and add an empty Else block before an Else block. See Add an If Action.

    • Try/Catch: If you accidentally delete a Catch or Finally node in Code view, you can add it back in Design view by right-clicking a Catch node (to add a Finally node) or a Finally node (to add a Catch node). See Add a Try-Catch Action.

    • Switch: You can add an empty case at the bottom by right-clicking the top-level Switch node. You can also add an empty case at a specific position by right-clicking an existing case. See Add a Switch Action.

    Additionally, we've changed the drop-zone for all four actions to a more targeted drop-line when you drag an action onto the canvas.

  • Coverage tab for action chain tests

    The Tests footer now includes a Coverage tab to display the average coverage of all tests, along with the number of failed and not-run tests, for the visual application, as well as each of its web apps, flows, and pages. See Use the Tests Footer in a Visual Application.

Opt for asynchronous event handling You now have the option to enable asynchronous event handling for components such as editable tables that accept asynchronous event listeners. Async event handling allows the component that fired the event to cancel it asynchronously, if needed—but this functionality is not enabled by default, so you must explicitly enable this behavior for your event listeners. See Enable Asynchronous Handling for Component Events.
Fragment enhancements
  • Support for autowiring fragment events on the parent container

    Fragments propagate values to the parent container (like a page or a dynamic container) through custom events—but this requires some manual configuration. Now you can use a new Auto Wire Event ID property to automatically wire the event to the fragment's parent container. So when you try to create an event listener on the container where the fragment is used, you'll see the autowired event listed under Fragment Events on the parent container, allowing you to simply select the event and link it to an action chain. See Automatically Wire a Fragment's Custom Event to the Parent Container.

  • Support to automatically create fragment variables as constants in a container

    When marking variable or constant input parameters in a fragment to be automatically created in the container that uses the fragment, you can choose to switch one for the other in the container—a constant for a variable, or a variable for a constant—using a new Create As property. This property is useful when fragments accept page-level properties as input parameters whose values are expressions evaluated within the scope of the page. For example, say a fragment defines a title variable whose value is passed from a page based on an expression. If the title is unlikely to change, you can switch the fragment variable to be created as a constant on the page. See Automatically Create and Wire a Fragment Variable on Its Container.

  • Support for vbDataProviderNotification events

    The vbDataProviderNotification lifecycle event, triggered by data providers to notify users of errors that occur when something goes wrong during an implicit fetch, is now supported in a fragment. You can use this event to display an error message, for example, when a service data provider makes a REST call to fetch data, but times out for whatever reason. See Define Actions and Events in Fragments.

Improvements to dynamic components
  • Layout property to control how field groups render in dynamic forms

    You can now use a layout property to control how grouped fields are rendered in dynamic forms. Use this property to specify whether a group is collapsed by default or not collapsible at all. See Group Fields in Dynamic Form Layouts.

  • Status indicator on time taken to fetch fields

    When you open a layout in the rule set editor, you can now access a status indicator to see how quickly the list of available fields is fetched from the service. See Create a Layout for a Dynamic Table or Form.

  • Improvements to dynamic container editor
    • The editor for customizing dynamic containers now allows you to add, remove, and change the order of sections directly in the Properties pane when the container has only one rule. For containers with multiple rules, you can open the embedded editor from the Properties pane.
    • When you add a new rule to a dynamic container, all available container sections are now added by default. You can then remove any sections you don't want to include in the container.

    See Add a Dynamic Container to a Page.
Enhancements for fields in a Layout
Improvements to business rules
  • Business rule templates

    You can now create business rule templates to help users when they create business rules. By providing templates, a user can create a rule from a template and modify it as needed, instead of starting with an empty rule. A template can provide examples of how to configure business rules, for example, how to specify rule conditions, how to write advanced expressions, or how to override properties. Templates themselves are not evaluated. See Create Templates for Business Rules.

  • Ability to override child field properties

    When editing business rules, you can now quickly override the properties of all child fields of regions and object fields, instead of setting the property for each child field individually. See Override Field Properties in a Form.

  • Improved condition builder

    The condition builder for business rules and validations has been improved to support additional operators. The operators drop-down list now includes "is null", "is not null", "includes", and "does not include". You can now also create conditions that compare the criterion's value to another field's value by selecting a field in the value drop-down list. See Set Conditions for a Rule.

    You can also edit a business rule to delete expressions used in the condition builder and when overriding the Value property. After removing a condition written as an expression, you can use the basic condition builder to create a condition. See Build Advanced Expressions.

  • Support for adding messages to read only and required fields

    You can now include a message text when you set a field to Read Only or Required in a business rule. The message is displayed in the form when the rule is applied. See Override Field Properties in a Form.

  • Error notifications in business rules editor

    Business rule editors now display a notification in the status bar to highlight errors that occur when connecting to a service. From the status bar, you can view details about service connection errors, as well as performance issues when fetching data from services. See Resolve the "Loading Completed with Errors" Message.

Node.js version Node.js 20 and 22 are the only supported versions for packaging visual applications with Grunt. See Build and Deploy Your Application Using Grunt.
Other enhancements
  • New Media & Files category

    The Components palette now includes a Media & Files category, which features the Camera and File Picker components.

  • New audit severity for showstopper errors

    A new Stopper severity has been added in the Audits pane to identify showstopper errors that may cause your app to break at runtime. See Audit Application Code.

  • New option for vb-process-local Grunt command

    A new additional-locales for the vb-process-local Grunt command now allows you to specify additional locales supported by an application. See Grunt Task - vb-process-local.

  • Create types from variable objects

    If your variable uses an object or array as its type, you can now use the Create Type option in the variable's context menu to create a type based on the existing structure of the variable right from the Variables editor. You can also do this for object types on the Types editor. See Create Variables and Create a Custom Object or Array Type.

  • Test pages in Live view even without context

    When your page doesn't render in Live view because it's missing context (say, data stored in flow-level variables), you can now provide a mock value in an action chain to allow the page to display correctly. See Preview a Visual Application.

  • List of Values drop-down in Page Input Parameters dialog

    It's now possible to display a list of values retrieved from a service (like a REST endpoint) for an input parameter by adding @dt metadata to the variable's JSON and setting subtype to lov. See Enable Variables as Input Parameters.

  • Help icon with label, description for page input parameters

    When marking a variable as an input parameter, you can now enter a label and a description to show a Help icon icon on the Page Input Parameters dialog and improve user experience. Page users can then click the icon to get a more meaningful identifier and some context on how best to set the parameter's value. See Enable Variables as Input Parameters.

  • Support for the new oj-if component

    You can now use the oj-if component to conditionally show or hide components in your pages. This component is similar to the oj-bind-if component, but unlike oj-bind-if where the element is not removed from the DOM after bindings are applied, oj-if stays in the DOM and can therefore directly be used as the slot content of a custom element. If you want to conditionally render the content of a slot or if you want the element to stay in the DOM, oj-if is recommended over oj-bind-if. See Use Conditions to Show or Hide Components.

  • Core Pack component versions for quick start fields

    If you've enabled Core Pack components in your visual app, you can now choose the Core Pack component version for a field when using quick starts such as the Add Create Page, Add Edit Page, and Add Details Page. This option is also available in extensions, where the Core Pack version is automatically selected as the component for a field if the component's Legacy version was superseded by the Core Pack version. If the Legacy and Core Pack versions are both available, you can choose to use the Core Pack version. See Use the Create Page Quick Start, Use the Add Edit Page Quick Start, and Use the Add Detail Page Quick Start.

  • Improved breadcrumbs to view component children, siblings

    You can now use breadcrumbs in the Page Designer to switch to a component's sibling in the page hierarchy. You can also view its children by hovering over ... at the end of the breadcrumb trail. See Use the Page Designer.

  • Check a component's details for availability in Components palette

    It's now easy to identify why a component installed from the Components Exchange doesn't show in the Components palette: Just open the component in the Navigator's Components pane to view its details in the canvas area, then look for the VB Characteristics field. Additionally, deprecated components are now badged Deprecated for easier identification. See Get Components from the Component Exchange.

25.10 Runtime Version

This release of VB Studio uses Oracle JET 18.1.x libraries and components. We recommend that you upgrade your VB Studio apps to this latest JET version, as well as to the 25.10 Visual Builder Runtime, to take advantage of the full spectrum of 25.10 features. While JET 18.1.x is primarily a bug fix release, JET 18.0.x includes the ability to drag and drop nodes between NBox cells and other JET elements such as List View, as well as drill-down support for Gantt charts. To see a list of what's new in JET 18.0.x and 18.1.x, go to the JET Release Notes and select v18.0.0 and v18.1.0.

You can upgrade to the latest JET and Visual Builder Runtime versions from your visual application's Settings editor. See Manage Runtime Dependencies for Visual Applications.

Release 24.10 - June 2025

Change Description
Convert public instance to private endpoint You can now modify a Visual Builder instance to convert a publicly accessible instance to a private endpoint inside your VCN. See Convert Your Public Instance to a Private Endpoint for the steps on how to convert an instance. Before converting an instance, you will need to complete the items in Prerequisite Steps for Configuring a Private Endpoint.

Release 24.10 - December 2024

Change Description
Create instance as private endpoint

When provisioning a new VB instance, you can now specify that Visual Builder use a private endpoint inside a Virtual Cloud Network (VCN) in your tenancy. This allows you to keep all traffic to and from your instance off the public internet.

If you want to allow access to a private endpoint from outside the VCN, you can use a load balancer in front of the endpoint. This way you can allow public access to the instance, while the instance is within a private VCN where it can access your ATP database.

For details, see Create an Instance as a Private Endpoint

Release 24.10 - August 2024

Change Description
Dark theme for web apps When you create a new web app using the default template, you can now customize the app's theme to show components against a dark background, instead of the default light background with dark text. You can even let your users choose between a Light and Dark theme. CSS variables to override the default Redwood look and feel are still supported—only now you make those overrides in the CSS files specific to the Light and Dark theme. See Customize a Web App's Appearance.
Opt-in for Core Pack components

Core Pack components, available under the Early Access category in the Components palette since 24.04, now require an opt-in if you want to use them in your application's pages. If you use these Core Pack components in your app, take note that Core Pack does not support theming at this time. The only way to theme your app is to roll back Core Pack usages in your app to Legacy components and re-implement your application.

If you don't ever plan to theme your app, you can choose to enable Core Pack components in the Components palette for use in your app's pages. See Opt In to JET Core Pack Components.

Business rules Business rules, which control the logic that determines what's displayed on the page at runtime, are now available for your visual application. See Use Business Rules With Your Rule Sets.
Enhanced variable and type creation We've optimized the process of creating multiple variables and types, so each variable or type is generated with a default name. You'd then use the Properties pane to update the name and other properties as needed. See Create Variables and Create Types.

With this update, the ability to create a custom type that defines a list of enumeration values is deprecated. See Deprecated Features.

Enhancements for JavaScript action chains
  • Actions within custom code

    You can now drop an action between single line and block statements in custom code, functionality that can improve productivity. Additionally, you can also take advantage of code completion in a Code action's Properties pane. See Add a Code Action.

  • Shorthand syntax for variables, constants, functions in current scope

    When you create a new JavaScript action chain or add actions to an existing chain, the underlying code now uses shorthand syntax, by default, to retrieve the value of variables, constants, and functions defined in the current scope. So for a page, where previously the syntax was $page.variables.myvar or $page.functions.myfunc, you'll now see $variables.myvar or $functions.myfunc instead in your action chain.

  • Duplicate option in JS action chains

    You can now duplicate an action, or a code block within an If, Switch, or Run in Parallel action. See Create Action Chains in Design Mode as well as Add an If Action, Add a Switch Action, and Add a Run In Parallel Action.

Note:

The option to toggle between JSON and JavaScript action chains in the Action Chains tab is no longer available. This change does not impact existing JSON action chains, which you can continue to edit—but all new action chains default to JavaScript. Further, you can no longer create new tests for JSON action chains, though existing tests will continue to run.
New dirtyDataStatus property in vbBeforeExit payload If you track changes in a variable's state to detect unsaved changes, you can now use the vbBeforeExit event listener's dirtyDataStatus payload (instead of the Get Dirty Data Status action) to check whether navigating away from a page will result in the tracked variable losing its data. See Add a Get Dirty Data Status Action.
Dependent fragment property for display When curating fragment properties for display in the Properties pane, you can now use an item's Dependent On field in the Design Time tab to specify other items that this item depends on for its data. This way, when the fragment is used on a page or container, the dependent item won't show in the Properties pane until the other items have their value. See Section Fragment Properties for Display in the Properties Pane.
Upgrade support for imported resources Resources that are using an older set of runtime dependencies when your app is imported can now be made compatible with the app's current runtime version. See Upgrade Imported Resources.
Option to select existing field for M:1 and 1:1 business object relationships A new and improved editor is now available when you create many-to-one and one-to-one relationships between business objects. Besides other improvements, the editor gives you the option of creating a new field as the referenced key (default), or selecting an existing field of the correct type. See Create a Many-To-One or One-To-One Relationship.

Many-to-many relationships continue to use the existing editor, now without the ability to change cardinality. A new + Many to Many Relationship option is also added to a business object diagram's context menu.

Usability improvements
  • Application Name field renamed

    The Application ID specified when you create or duplicate an application is now Application Name. Also, what used to be Application Name is now Application Display Name. With this change, the app's display name, name, and ID are displayed on the Settings editor, so you can pick the correct value when building REST URLs for cURL commands. See Create a New Visual Application, Create a Copy of an Application, and Manage Visual Application Settings.

  • New Select Variable icon in the Properties pane

    The Select Variable icon in the Properties pane has been changed to better represent the variable picker. You'd now click Select Variable (instead of Select variable iconpreviously) to select a variable.

  • Listener shortcut on the Events editor

    You can now use a shortcut to create a listener when you're working with custom events in the Events editor, instead of switching to the Events Listener editor. Simply select the new Create Event Listener option in an event's right-click menu to create a new event listener in the same scope as the event. See Create Event Listeners for Events.

24.10 Runtime Version

This release of Visual Builder uses Oracle JET 16.1.x libraries and components. We recommend that you upgrade your Visual Builder applications to this latest JET version, as well as to the 24.10 Visual Builder Runtime, to take advantage of the full spectrum of 24.10 features. JET 16.1.x is primarily a bug fix release, but it does include some visual and behavior changes. To see a list of what's new in JET 16.1.x, go to the JET Release Notes and select v16.1.0.

You can upgrade to the latest JET and Visual Builder Runtime versions from your visual application's Settings editor. See Manage Runtime Dependencies for Visual Applications.

New Features in Oracle Visual Builder Add-in for Excel

The version of Oracle Visual Builder Add-in for Excel bundled in Visual Builder 25.10 is 4.4. To see what's new in this release, go to the add-in's documentation page and click 4.4.0.

Supported Browsers

Oracle Visual Builder supports the latest version of Google Chrome and Microsoft Edge running on Mac OS X and Windows. Other browsers and platforms are not supported.

Applications created using Visual Builder can run on any browser supported by Oracle JET. For details, see What platforms are supported by Oracle JET?

JavaScript must be enabled for all browsers.

Deprecated Features

Take note of features that have been deprecated and are no longer supported in Visual Builder:

Feature Description Notice of Deprecation End of Support/Life
Alta theme

Apps created on VB Studio version 20.07 or earlier were created with Oracle JET's Alta theme as the base theme. The Alta theme was deprecated in JET 10 and support was dropped in JET 14. With the release of JET 18 (bundled with VB Studio 25.07), the ability to create new custom themes with Alta as the base theme has been removed. Further, all CSS and SCSS files will be removed from JET distributions starting with JET 21.

To check the theme used by your application, navigate to the application's Settings editor and look for the Theme field. If Theme is set to Alta, redesign your app using the Redwood theme. You will not be able to move to the latest runtime version until you transition your app to use the Redwood theme.

22.01 - Dec 2021 Jan 2024
Custom enumeration type The ability to create a custom type that defines a list of enumeration values is now deprecated. Instead of creating an enumerated list as a type, you can create a variable, then use the Subtype option in the variable's Design Time tab to define your enumerated list. See Create Variables.

24.10 - July 2024

24.10 - July 2024

Delegate Authentication for backends and service connections

The Delegate Authentication option used for backends and service connections in a web app is deprecated. This option, when used with the Enable implicit grant for Service Connections option (which has been deprecated since 24.04), enabled a direct Implicit OAuth flow with IDCS for Oracle Cloud Application REST APIs when a service connection used by the web app was configured for Delegate Authentication. Implicit OAuth is no longer a recommended option. In other scenarios, Delegate Authentication behaves the same as the Oracle Cloud Account option, with the Visual Builder Proxy enabled.

If your existing apps use Delegate Authentication, take action as follows:
  1. Update the backend or service connection's server configuration in your visual application:
    1. Change any backends or service connections that use Delegate Authentication to Oracle Cloud Account authentication.
    2. If the REST API doesn't support CORS, change the Connection Type to Always use proxy, irrespective of CORS support; otherwise, leave the configuration as is.
  2. Test the service connection from the Test tab to identify any issues.
  3. Open the web app's Settings editor, then deselect the Enable implicit grant for Service Connections option in the Security tab if necessary.
  4. Test the web app to make sure the service connection doesn't have any issues.

No action is needed if your web apps don't have backends/service connections set to Delegate Authentication.

25.10 - July 2025

Planned for November 2026

Implicit grant for backends and service connections

The Enable implicit grant for Service Connections option used for backends and service connections in a web app has been deprecated. The change does not impact existing apps that enable this option—though it won't be available for new web apps starting from June 2024. If your existing web apps use the Enable implicit grant for Service Connections option, we recommend updating them.

The Enable implicit grant for Service Connections option was used in conjunction with the Delegate Authentication setting found in a backend or service connection's server configuration. It enabled a direct Implicit OAuth flow with IDCS for Oracle Cloud Application REST APIs when a service connection used by the web app was configured for Delegate Authentication. Implicit OAuth is no longer a recommended option. If your existing apps use this option, take action as follows:
  1. Update the backend or service connection's server configuration in your visual application:
    1. Change any backends or service connections that use Delegate Authentication to Oracle Cloud Account authentication.
    2. If the REST API doesn't support CORS, change the Connection Type to Always use proxy, irrespective of CORS support; otherwise, leave the configuration as is.
  2. Test the service connection from the Test tab to identify any issues.
  3. Open the web app's Settings editor, then deselect the Enable implicit grant for Service Connections option in the Security tab.
  4. Test the web app to make sure the service connection doesn't have any issues.

No action is needed if your web apps don't have Enable implicit grant for Service Connections enabled and if none of your backends/service connections are set to Delegate Authentication.

24.04 - Feb 2024

Planned for November 2026

transform behavior type for custom events The transform behavior type for custom events is deprecated and replaced by the new tranformPayload behavior type. The change does not impact existing apps with events configured to use the transform type, but the new tranformPayload type addresses issues with invoking event listeners in the correct order. Where possible, users are encouraged to switch to the new behavior type. 24.04 - Jan 2024 24.04 - Feb 2024
Mobile apps Mobile applications have reached End of Life (EOL) and are no longer supported. To be able to use your mobile apps, including PWA-enabled ones, you must convert your mobile app as a web app and deploy it as a PWA for use on mobile devices. 23.04 - Feb 2023 24.10 - Oct 2024
Hybrid mobile apps and Apache Cordova custom plugin Functionality relating to hybrid mobile applications (deprecated since May 2021) has been removed from the product. This means that the use of build configurations to build native .ipa and .apk files for distribution to iOS and Android devices—as well as the Cordova custom plug-in option—are no longer available. You can no longer create new hybrid mobile apps or new build profiles for existing apps; build configurations for existing apps will be ignored. For apps that target mobile devices, enabling PWA support is the recommended approach for distribution. 21.07 - May 2021 23.10 - August 2023
End of Life (EOL) for Oracle Visual Builder Classic

The Oracle Visual Builder Classic service offering has reached End of Life (EOL) and End of Support Life (EOSL), and is now no longer available. Oracle will migrate all current Oracle Visual Builder Classic instances to the service's replacement: Oracle Visual Builder Generation 2. This does not affect instances already on Oracle Visual Builder Generation 2.

Instance administrators will receive email notifications with details about when their instances will be migrated, and how to prepare for the migration. For more details, see Migrate Your Instance to Generation 2 in Administering Oracle Visual Builder in Oracle Integration 3.

Post-22.10 - Sept 2022 Sept 2022
Select One component The Select One (oj-select-one) component, deprecated since JET 8.1.0, has been removed from the Components palette and is visible only if you select the Show Deprecated option. Switch instead to Select Single (oj-select-single). 22.04 - Feb 2022 N/A
Oracle SaaS R13 Light Theme The Oracle SaaS R13 Light Theme application template has been deprecated, although we will continue to support it until version 22.01 reaches End of Life (EOL). See Updating an Oracle SaaS application template for more information. 22.01 - Dec 2021 N/A
navigateToPageAction The navigateToPageAction action is deprecated in 21.07. When you upgrade your app to version 21.10, any existing action chains that use navigateToPageAction are automatically migrated to navigateAction (introduced in 21.07). 21.07 - May 2021 N/A
Internet Explorer 11 Visual Builder runtime has deprecated the use of Internet Explorer 11 since 19.4.3. Users who try to access a deployed Visual Builder application from Internet Explorer will see a deprecation warning. Starting with 21.04, Oracle Support will no longer address issues pertaining to Internet Explorer 11. 19.4.3 - Aug 2020 21.04 - Feb 2021
Processes in Visual Builder The following Process-related features are deprecated:
  • Register deployed processes
  • Use of Process Actions in Action Chains
  • Support for Process code snippets
  • Process-related Quick Starts

You can still use these features in Oracle Integration Generation 2, but as you plan the transition to Oracle Integration 3, you should leverage service connections instead to interact with Process.

To leverage OCI Process Automation (Oracle Integration 3) in your application, create an OCI Process Automation backend based on your instance, then create service connections for the REST APIs you want to use in your visual application. See Connect to Oracle Process Automation APIs for more information.

24.04 - Feb 2024 Not available in Oracle Integration 3 and beyond

Upgrade Policy

When Visual Builder is upgraded to a new release, any new visual apps you create automatically use the latest Visual Builder Runtime and JET dependencies. However, apps created in earlier releases are not automatically updated—it’s up to you to decide when to upgrade, as long as you do so within a certain time period.

As a general rule, you can publish a Visual Builder application on the current runtime version, and continue to develop it on the four previous runtime versions. Published apps can run indefinitely, but when working on apps in the Designer, you must consider support for the app's original runtime version. New Visual Builder runtime libraries are released with new versions of the Visual Builder Studio design time (around four times a year)—but the Visual Builder design time is only updated twice a year, getting only two of those four runtime versions (one of the reasons we recommend using Visual Builder Studio as your design environment). In other words, when updating an app in the Designer, keep in mind that its runtime libraries are supported for about a year, after which you'll be prompted to upgrade. In Visual Builder, you need to upgrade your app every other release; in Visual Builder Studio, you upgrade your app after four releases.

So if you built your app in 25.10 (for example), Visual Builder supports the app not only on the 25.10 runtime version, but also on 26.01, 26.04, 26.07, and 26.10. Once 26.04 comes out, support for the 25.10 runtime version will drop off, so we'll ask you to upgrade your app before you can work on it in the Designer. If you choose not to upgrade and republish, you run the risk that newer browser versions will break your published app. You also won’t be able to take advantage of any important security and performance improvements. For all of these reasons, we encourage you to build time into your development cycle to keep abreast of current changes, and to make sure you upgrade your app (you should version it first) before support for your current runtime version expires.

See Manage Runtime Dependencies for Visual Applications for details on how to upgrade.