Table of Contents

Why did you choose Knockout and other libraries over more popular ones?

One of the main objectives of Oracle JET was to be a modular toolkit that allows developers to use as little or as much as they need for their particular project. To accomplish this, we researched the best JavaScript libraries for specific tasks needed when developing a modern JavaScript client-side application. While there are plenty of more popular full frameworks available, we felt that with the rapidly changing JavaScript landscape, tying developers into one specific framework was not in the best interest of future growth and flexibility.

Who can use Oracle JET in production?

Anyone and Everyone can use Oracle JET. It's an Open Source project sponsored by Oracle. It is distributed under the Universal Permissive License(UPL).

Is Oracle JET Open Source?

Yes, Oracle JET is distributed under the Universal Permissive License(UPL).

How is Oracle JET different than Application Developer Framework(ADF)?

Oracle ADF and Oracle JET target different types of developer and focus on different development paradigm and architecture. Here are some of the high-level differences between the frameworks:

  • Oracle JET is targeted at JavaScript developers from intermediate level to advance. Oracle ADF is targeted at Java developers from beginner to advance.
  • Oracle JET has a code centric development paradigm, while Oracle ADF aims for a more declarative approach to development.
  • Oracle JET is a pure client-side toolkit. Oracle ADF is a server focused framework.
  • Oracle JET handles the creation of user interfaces, Oracle ADF handles the business service creation in addition to creation of UI layer.
  • Oracle JET data interaction is via web services only (REST, WebSockets, SSE, etc). Oracle ADF support web service interaction with data services (REST/SOAP) in addition to direct binding approach.

What is the release schedule for Oracle JET?

Oracle JET is released on a regular schedule multiple times per year. The intent is to produce a predictable and consistent release schedule that teams can base their own development cycles on. There are two major releases per year with multiple minor releases in between each major. The major releases can contain API changes as well as new versions of dependent libraries such as Knockout.js, jQuery, etc. if they exist at that time. Minor releases are limited to bug fixes and additive, non-destructive features. The intent is for teams to be able to drop a minor releases on top of an existing application and not have to change any code other than the version path info.

The table below is the current plan of record. While we have been very successful in delivering to a predictable and consistent schedule, the dates provided are not a guarantee of delivery, and could change with short or no notice.

(New Semantic Versioning number scheme implemented)
Version Scheduled Release Feb 29 2016 (Open Source Release)
2.2.0Oct 2016
3.0.0 March 2017
4.0.0 ( v2.x reached End of Life(EOL)) September 2017
5.0.0 ( v3.x reached End of Life(EOL)) April 2018
5.1.0 June 2018
5.2.0 Aug 2018
6.0.0 ( v4.x reached End of Life(EOL)) Oct 2018
6.1.0 Jan 2019 (annual Holiday shift pushes this to January)
6.2.0 Mar 2019
7.0.0 ( v5.x and older will reach End of Life(EOL) when this is released) May 2019
7.1.0 July 2019
7.2.0 Sept 2019
8.0.0 ( v6.x and older will reach End of Life(EOL) when this is released) Nov 2019

What platforms are supported by Oracle JET?

Oracle JET is designed and tested against most modern HTML5 compliant browsers. Oracle JET will comply with the larger Oracle Software Web Browser Support Policy. Oracle JET is supported on the following user agents (i.e. browsing platforms):

Chrome Firefox Internet Explorer ** Microsoft Edge Safari
Android Supported * Not Supported N/A N/A N/A
iOS Not Supported Not Supported N/A N/A Supported
Mac OSX Supported Supported N/A N/A Supported
Windows Supported Supported Supported (IE11 Only) Supported N/A

Oracle JET is supported on the following hybrid (mobile) runtime WebViews:

WebView Min supported version Operating System(s)
UIWebView 10.3 iOS 10.3 and above
WKWebView 10.3 iOS 10.3 and above
Android System WebView Android 5.0 and above ***
Windows System WebView 10.0.14393.0 Windows 10

The intent is to support the latest version of the browser available at the point JET releases and in some cases, such as IE and Safari, one previous major release. Please refer to the Oracle Software Web Browser Support Policy for any questions

* Support on the Android operating system is limited to Chrome for Android. The Native Android browser that shipped with version prior to 4.4.x is not supported.

** Support for Microsoft Browsers will follow the same N-1 support policy that iOS provides. The most recent version plus one previous release. As of January 12th 2016, this means the most recent version of Microsoft Edge and IE11 only.

*** Android 5.0 shipped with v36 of the Android System WebView, however the WebView should automatically update on users' devices. If not, users can manually update it. The Android 5.0 (API 21) emulator uses v36, with which JET is not compatible.

Compatibility Mode: For Windows Browsers, only Native mode is supported. View Compatibility mode should be disabled.

RTL Languages: Support for RTL (right to left) languages, such as Arabic or Hebrew, is available with supported versions of Microsoft Browsers, Firefox, Safari, and Chrome.

JavaScript: JavaScript support must be enabled.

Doctype: We rely on CSS attribute selectors, some versions of IE support attribute selectors only if a !DOCTYPE is specified, therefore to use JET on IE a doctype is required.

What do JET version numbers mean?

Starting with the v2.2.0 release of Oracle JET we started following the Semantic Versioning standard for product numbering.

Digit Example Description Impact
1st 2.0.0 MAJOR version when incompatible API changes are possible. Any change to the first digit indicates a revision/migration of an application is necessary. We do not guarantee an application written between changes of this release number can be migrated to the next major version without possible code changes. These releases are also used for updating libaries that Oracle JET has dependecies against. (e.g. jQuery, Knockou, RequireJS, etc)
2nd 2.1.0 MINOR version when functionality is added in a backwards-compatible manner. This release may contain new features as well as bug fixes that are non-destructive in nature. It does not require an app to change any APIs, and should be drop-in compatible with the previous major release that it is a minor of. Application will be required to change the version string in file path references.
3rd 2.1.1 PATCH version when backwards-compatible bug fixes are made available for security or catastrophic issues only. This type of release is rare and only produced when a security issue, or a bug that causes a browser crash, needs to be fixed. It should be drop-in compatible with the previous major release that is a minor of.

What versions of Node.js and npm are required for Oracle JET tooling?

Oracle JET tooling requires Node.js v4+ and npm v3.x or v4.x to be installed.