{"id":24479,"date":"2019-04-22T12:15:52","date_gmt":"2019-04-22T09:15:52","guid":{"rendered":"http:\/\/www.webcodegeeks.com\/?p=24479"},"modified":"2019-04-25T13:49:26","modified_gmt":"2019-04-25T10:49:26","slug":"oracle-jet-components-demo-using-cookbook-in-jdeveloper","status":"publish","type":"post","link":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/","title":{"rendered":"Oracle JET Components Demo Using Cookbook in Jdeveloper"},"content":{"rendered":"\n<p> In this post, I am sharing how can we use Oracle JET Cookbook to understand basic UI components and How can we copy and use code from the cookbook. Here I am using JDeveloper 12.1.3 to create Oracle JET Components Demo Application. <\/p>\n\n\n\n<p>In the previous post, I have explained about&nbsp;<a href=\"http:\/\/www.awasthiashish.com\/2019\/03\/getting-started-with-oracle-jet-and-jdeveloper.html\" target=\"_blank\" rel=\"noreferrer noopener\">creating a JET application using JDeveloper<\/a>. Here I am using the same application to show JET components demo. Oracle JET cookbook has many recipes that we can try in our application to learn more about coding pattern and toolkit structure.<\/p>\n\n\n\n<p>Here you can access&nbsp;<a href=\"https:\/\/www.oracle.com\/webfolder\/technetwork\/jet\/jetCookbook.html\" target=\"_blank\" rel=\"noreferrer noopener\">Oracle JET Cookbook<\/a><\/p>\n\n\n\n<p>Now open your NavDrawer JET application in JDeveloper, Run it and you can see Dashboard page opened in the browser<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/JET-Dashboard-Module.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24480\" width=\"707\" height=\"199\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/JET-Dashboard-Module.jpg 942w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/JET-Dashboard-Module-300x84.jpg 300w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/JET-Dashboard-Module-768x216.jpg 768w\" sizes=\"(max-width: 707px) 100vw, 707px\" \/><\/figure><\/div>\n\n\n\n<p>You can see that this page tells the path of the file to edit in case you want to update its content<\/p>\n\n\n\n<p>In JDeveloper select Project navigate to&nbsp;<em>Web Content \u2013&gt; js<\/em>&nbsp;and expand&nbsp;<em><strong>views<\/strong>&nbsp;<\/em>and&nbsp;<em><strong>viewModels<\/strong>&nbsp;<\/em>folder, Here you can see various HTML files and their corresponding javascript files. In this post, I am using the dashboard module for showing the JET components demo.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" width=\"344\" height=\"485\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/views-and-viewModels.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24481\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/views-and-viewModels.jpg 344w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/views-and-viewModels-213x300.jpg 213w\" sizes=\"(max-width: 344px) 100vw, 344px\" \/><\/figure><\/div>\n\n\n\n<p>Now open&nbsp;<em><strong>dashboard.html<\/strong><\/em>&nbsp;and&nbsp;<em><strong>dashboard.js<\/strong><\/em>&nbsp;file in the editor. We\u2019ll work in these two files to learn about various JET components<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">oj-input-text (Input Text) Component<\/h3>\n\n\n\n<p>Goto Oracle JET Cookbook and navigate to&nbsp;<a href=\"https:\/\/www.oracle.com\/webfolder\/technetwork\/jet\/jetCookbook.html?component=textInput&amp;demo=text\" target=\"_blank\" rel=\"noreferrer noopener\">input text demo page<\/a><\/p>\n\n\n\n<p>Copy this code from&nbsp;<em><strong>demo.html<\/strong><\/em><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" width=\"768\" height=\"640\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/demo-html-file.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24482\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/demo-html-file.jpg 768w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/demo-html-file-300x250.jpg 300w\" sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/figure><\/div>\n\n\n\n<p>\n\nand paste in&nbsp;<strong><em>dashboard.html<\/em><\/strong>, you can see that this piece of code contains HTML tag for showing a label, an input text and its value in the span element\n\n<\/p>\n\n\n\n<pre class=\"brush:xml\">&lt;oj-label for=\"text-input\"&gt;oj-input-text component&lt;\/oj-label&gt;\n&lt;oj-input-text id=\"text-input\" value=\"{{value}}\"&gt;&lt;\/oj-input-text&gt;\n        \n          &lt;br\/&gt;&lt;br\/&gt;\n        \n&lt;span class=\"oj-label\"&gt;Current component value is: &lt;\/span&gt;\n&lt;span data-bind=\"text: value\"&gt;&lt;\/span&gt;\n<\/pre>\n\n\n\n<p>\n\nNow we need to set the&nbsp;<strong>value<\/strong>&nbsp;of this input text component in the dashboard.js file, So copy this line\n\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" width=\"769\" height=\"552\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/demo-js-file.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24483\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/demo-js-file.jpg 769w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/demo-js-file-300x215.jpg 300w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/demo-js-file-768x551.jpg 768w\" sizes=\"(max-width: 769px) 100vw, 769px\" \/><\/figure><\/div>\n\n\n\n<p>\n\nand paste in the dashboard.js file under&nbsp;<strong>var self = this;<\/strong>&nbsp;line and don\u2019t forget to add input text declaration (ojs\/ojinputtext) in define block otherwise it\u2019ll not appear on the page\n\n<\/p>\n\n\n\n<pre class=\"brush:java\">\/*\n * Your dashboard ViewModel code goes here\n *\/\ndefine(['ojs\/ojcore', 'knockout', 'jquery', 'ojs\/ojinputtext'], function (oj, ko, $) {\n    function DashboardViewModel() {\n        var self = this;\n        this.value = ko.observable(\"Green\");\n.\n.\n.\n<\/pre>\n\n\n\n<p>\n\nHere you can see that Knockout js object&nbsp;<strong>ko<\/strong>&nbsp;is setting the value of JET input text component, Now run and check application\n\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" width=\"503\" height=\"377\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-Input-Text-Demo.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24484\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-Input-Text-Demo.jpg 503w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-Input-Text-Demo-300x225.jpg 300w\" sizes=\"(max-width: 503px) 100vw, 503px\" \/><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">oj-select-one (Select One Choice) Component<\/h3>\n\n\n\n<p>Goto Oracle JET Cookbook and navigate to&nbsp;<a href=\"https:\/\/www.oracle.com\/webfolder\/technetwork\/jet\/jetCookbook.html?component=selectOne&amp;demo=single\" target=\"_blank\" rel=\"noreferrer noopener\">select one choice demo page<\/a><\/p>\n\n\n\n<p>Copy code from&nbsp;<em><strong>demo.html<\/strong>&nbsp;<\/em>and paste in the&nbsp;<em><strong>dashboard.html,<\/strong><\/em>&nbsp;Here goes the code of&nbsp;<em><strong>dashboard.html<\/strong><\/em><\/p>\n\n\n\n<pre class=\"brush:xml\">&lt;div class=\"oj-hybrid-padding\"&gt;\n    &lt;h1&gt;Dashboard Content Area&lt;\/h1&gt;\n    &lt;div&gt;\n        &lt;oj-label for=\"basicSelect\"&gt;Select One&lt;\/oj-label&gt;\n         \n        &lt;oj-select-one id=\"basicSelect\" value=\"{{val}}\" style=\"max-width:20em\"&gt;\n            &lt;oj-option value=\"IE\"&gt;Internet Explorer&lt;\/oj-option&gt;\n            &lt;oj-option value=\"FF\"&gt;Firefox&lt;\/oj-option&gt;\n            &lt;oj-option value=\"CH\"&gt;Chrome&lt;\/oj-option&gt;\n            &lt;oj-option value=\"OP\"&gt;Opera&lt;\/oj-option&gt;\n            &lt;oj-option value=\"SA\"&gt;Safari&lt;\/oj-option&gt;\n        &lt;\/oj-select-one&gt;\n         \n        &lt;br\/&gt;\n         \n        &lt;oj-label for=\"curr-value\"&gt;Current selected value is&lt;\/oj-label&gt;\n         \n        &lt;span id=\"curr-value\"&gt;\n            &lt;oj-bind-text value=\"[[val]]\"&gt;&lt;\/oj-bind-text&gt;&lt;\/span&gt;\n    &lt;\/div&gt;\n&lt;\/div&gt;\n<\/pre>\n\n\n\n<p>\n\nYou can understand from the above code that a select one choice and its items are defined using JET HTML tags, Now set the initial value of this component in&nbsp;<em><strong>the dashboard.js<\/strong><\/em>&nbsp;file and don\u2019t forget to add select one choice declaration&nbsp;<em><strong>(ojs\/ojselectcombobox)<\/strong><\/em>&nbsp;in define block\n\n<\/p>\n\n\n\n<pre class=\"brush:java\">\/*\n * Your dashboard ViewModel code goes here\n *\/\ndefine(['ojs\/ojcore', 'knockout', 'jquery', 'ojs\/ojselectcombobox'], function (oj, ko, $) {\n    function DashboardViewModel() {\n        var self = this;\n        this.val = ko.observable(\"CH\");\n.\n.\n<\/pre>\n\n\n\n<p>\n\nRun and check application, You can see a select one choice rendered on the page and its value is set using&nbsp;<em><strong>val<\/strong><\/em>&nbsp;variable\n\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" width=\"545\" height=\"415\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-SelectOneChoice-Demo.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24485\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-SelectOneChoice-Demo.jpg 545w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-SelectOneChoice-Demo-300x228.jpg 300w\" sizes=\"(max-width: 545px) 100vw, 545px\" \/><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">oj-radioset (Radio Button Group) Component<\/h3>\n\n\n\n<p>Goto Oracle JET Cookbook and navigate to&nbsp;<a href=\"https:\/\/www.oracle.com\/webfolder\/technetwork\/jet\/jetCookbook.html?component=radiosets&amp;demo=radioset\" target=\"_blank\" rel=\"noreferrer noopener\">radio set demo page<\/a><\/p>\n\n\n\n<p>Copy entire form from&nbsp;<em><strong>demo.html<\/strong><\/em>&nbsp;and paste in the&nbsp;<em><strong>dashboard.html<\/strong><\/em>&nbsp;page, this form contains a radio set and an additional button that changes the value of radio set. Here you\u2019ll also learn about button action.<\/p>\n\n\n\n<pre class=\"brush:xml\">&lt;div class=\"oj-hybrid-padding\"&gt;\n    &lt;h1&gt;Dashboard Content Area&lt;\/h1&gt;\n    &lt;div id=\"formId\" class=\"oj-form\"&gt;\n        &lt;oj-label id=\"mainlabelid\"&gt;Colors&lt;\/oj-label&gt;\n         \n        &lt;!-- You need to set the labelled-by attribute\n               to make this accessible.\n               role=\"radiogroup\" is set for you by oj-radioset. --&gt;\n         \n        &lt;oj-radioset id=\"radiosetBasicDemoId\" labelled-by=\"mainlabelid\" value=\"{{currentColor}}\"&gt;\n            &lt;!-- This is an example of how to use oj-bind-for-each, along with oj-bind-text to \n                   iterate over an array of objects--&gt;\n            &lt;oj-bind-for-each data=\"[[colorOptions]]\"&gt;\n                &lt;template&gt;\n                    &lt;oj-option id=\"[[$current.data.id]]\" value=\"[[$current.data.value]]\"&gt;\n                        &lt;oj-bind-text value=\"[[$current.data.color]]\"&gt;&lt;\/oj-bind-text&gt;\n                    &lt;\/oj-option&gt;\n                &lt;\/template&gt;\n            &lt;\/oj-bind-for-each&gt;\n        &lt;\/oj-radioset&gt;\n         \n        &lt;br\/&gt;\n         \n        &lt;span&gt;Current component value is: &lt;\/span&gt;\n         \n        &lt;span id=\"curr-value\" data-bind=\"text: currentColor\"&gt;&lt;\/span&gt;\n         \n        &lt;br\/&gt;\n         \n        &lt;br\/&gt;\n        &lt;div id='buttons-container'&gt;\n            &lt;oj-button id='inputButton4' on-oj-action='[[setModelCurrentColorToBlue]]'&gt;Set model currentColor to blue&lt;\/oj-button&gt;\n        &lt;\/div&gt;\n    &lt;\/div&gt;\n&lt;\/div&gt;\n<\/pre>\n\n\n\n<p>\n\nNow use this code in the dashboard.js file, that populates radio set from an observable array and a method that is called on button click. Focus on the variable names and you\u2019ll understand how they are referenced from UI components.\n\n<\/p>\n\n\n\n<pre class=\"brush:java\">\/*\n * Your dashboard ViewModel code goes here\n *\/\ndefine(['ojs\/ojcore', 'knockout', 'jquery', 'ojs\/ojradioset', 'ojs\/ojbutton', 'ojs\/ojlabel'], function (oj, ko, $) {\n    function DashboardViewModel() {\n        var self = this;\n        \/\/ this variable keeps track of the currentColor. \n        \/\/ It's a Knockout observable which\n        \/\/ means it is a two-way binding.\n        self.currentColor = ko.observable(\"red\");\n        \n        \/\/Array that populates Radio Set\n        self.colorOptions = ko.observableArray([\n        {id : \"blueopt\", value : \"blue\", color : \"Blue\"},\n        {id : \"greenopt\", value : \"green\", color : \"Green\"},\n        {id : \"redopt\", value : \"red\", color : \"Red\"},\n        {id : \"limeopt\", value : \"lime\", color : \"Lime\"},\n        {id : \"aquaopt\", value : \"aqua\", color : \"Aqua\"},]);\n        \n        \/\/Method that is called on button click\n        self.setModelCurrentColorToBlue = function () {\n            alert(\"Set model currentColor to blue.\");\n            self.currentColor(\"blue\");\n            return true;\n        }\n.\n.\n.\n<\/pre>\n\n\n\n<p>\n\nNow run the application and check button functionality.\n\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" width=\"554\" height=\"547\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-Radio-Set-Demo.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24486\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-Radio-Set-Demo.jpg 554w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-Radio-Set-Demo-300x296.jpg 300w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-Radio-Set-Demo-70x70.jpg 70w\" sizes=\"(max-width: 554px) 100vw, 554px\" \/><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">oj-table (JET table) Component<\/h3>\n\n\n\n<p>Goto Oracle JET Cookbook and navigate to&nbsp;<a href=\"https:\/\/www.oracle.com\/webfolder\/technetwork\/jet\/jetCookbook.html?component=table&amp;demo=basicTable\" target=\"_blank\" rel=\"noreferrer noopener\">JET table demo page<\/a><\/p>\n\n\n\n<p>Read the recipe carefully and try to understand the code, Here JET table is populated using ArrayDataProvider. Here goes the code for&nbsp;<em><strong>dashboard.html<\/strong><\/em><\/p>\n\n\n\n<pre class=\"brush:xml\">&lt;oj-table id='table' aria-label='Departments Table'\n                                        data='[[dataprovider]]'\n                                        selection-mode='{\"row\": \"multiple\", \"column\": \"multiple\"}'\n                                        dnd='{\"reorder\": {\"columns\": \"enabled\"}}'\n                                        scroll-policy='loadMoreOnScroll'\n                                        scroll-policy-options='{\"fetchSize\": 10}'\n                                        columns='[{\"headerText\": \"Department Id\", \n                                                   \"field\": \"DepartmentId\",\n                                                   \"headerClassName\": \"oj-sm-only-hide\",\n                                                   \"className\": \"oj-sm-only-hide\",\n                                                   \"resizable\": \"enabled\"},\n                                                  {\"headerText\": \"Department Name\", \n                                                   \"field\": \"DepartmentName\",\n                                                   \"resizable\": \"enabled\"},\n                                                  {\"headerText\": \"Location Id\", \n                                                   \"field\": \"LocationId\",\n                                                   \"headerClassName\": \"oj-sm-only-hide\",\n                                                   \"className\": \"oj-sm-only-hide\",\n                                                   \"resizable\": \"enabled\"},\n                                                  {\"headerText\": \"Manager Id\", \n                                                   \"field\": \"ManagerId\",\n                                                   \"resizable\": \"enabled\"}]'\n                                        style='width: 100%; height: 300px;'&gt;\n&lt;\/oj-table&gt;\n<\/pre>\n\n\n\n<p>\n\nand&nbsp;<em><strong>dashboard.js<\/strong><\/em>&nbsp;code goes like this, Here&nbsp;<strong>deptArray<\/strong>&nbsp;is passed in&nbsp;<strong>ArrayDataProvider<\/strong>&nbsp;to populate data in the JET table.\n\n<\/p>\n\n\n\n<pre class=\"brush:java\">\/*\n * Your dashboard ViewModel code goes here\n *\/\ndefine(['ojs\/ojcore', 'knockout', 'jquery','ojs\/ojarraydataprovider','ojs\/ojknockout','ojs\/ojtable'], \nfunction (oj, ko, $, ArrayDataProvider) {\n    function DashboardViewModel() {\n        var self = this;\n        \n        var deptArray = [\n        {DepartmentId: 3, DepartmentName: 'ADFPM 1001 neverending', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 5, DepartmentName: 'BB', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 10, DepartmentName: 'Administration', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 20, DepartmentName: 'Marketing', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 30, DepartmentName: 'Purchasing', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 40, DepartmentName: 'Human Resources1', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 50, DepartmentName: 'Administration2', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 60, DepartmentName: 'Marketing3', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 70, DepartmentName: 'Purchasing4', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 80, DepartmentName: 'Human Resources5', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 90, DepartmentName: 'Human Resources11', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 100, DepartmentName: 'Administration12', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 110, DepartmentName: 'Marketing13', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 120, DepartmentName: 'Purchasing14', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 130, DepartmentName: 'Human Resources15', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 1001, DepartmentName: 'ADFPM 1001 neverending', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 1009, DepartmentName: 'BB', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 1011, DepartmentName: 'Administration', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 2011, DepartmentName: 'Marketing', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 3011, DepartmentName: 'Purchasing', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 4011, DepartmentName: 'Human Resources1', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 5011, DepartmentName: 'Administration2', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 6011, DepartmentName: 'Marketing3', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 7011, DepartmentName: 'Purchasing4', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 8011, DepartmentName: 'Human Resources5', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 9011, DepartmentName: 'Human Resources11', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 10011, DepartmentName: 'Administration12', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 11011, DepartmentName: 'Marketing13', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 12011, DepartmentName: 'Purchasing14', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 13011, DepartmentName: 'Human Resources15', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 14011, DepartmentName: 'ADFPM 1001 neverending', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 15011, DepartmentName: 'BB', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 21022, DepartmentName: 'Administration', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 22022, DepartmentName: 'Marketing', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 23022, DepartmentName: 'Purchasing', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 24022, DepartmentName: 'Human Resources1', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 25022, DepartmentName: 'Administration2', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 26022, DepartmentName: 'Marketing3', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 27022, DepartmentName: 'Purchasing4', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 28022, DepartmentName: 'Human Resources5', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 29022, DepartmentName: 'Human Resources11', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 310022, DepartmentName: 'Administration12', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 311022, DepartmentName: 'Marketing13', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 312022, DepartmentName: 'Purchasing14', LocationId: 200, ManagerId: 300},\n        {DepartmentId: 313022, DepartmentName: 'Human Resources15', LocationId: 200, ManagerId: 300}];\n    \n        self.dataprovider = new ArrayDataProvider(deptArray, {keyAttributes: 'DepartmentId', implicitSort: [{attribute: 'DepartmentId', direction: 'ascending'}]});\n        .\n        .\n        .\n<\/pre>\n\n\n\n<p>\n\nRun application and check\n\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-table-demo.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24487\" width=\"722\" height=\"416\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-table-demo.jpg 962w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-table-demo-300x173.jpg 300w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-table-demo-768x442.jpg 768w\" sizes=\"(max-width: 722px) 100vw, 722px\" \/><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">oj-data-grid (Data Grid) Component<\/h3>\n\n\n\n<p>Goto Oracle JET Cookbook and navigate to&nbsp;<a href=\"https:\/\/www.oracle.com\/webfolder\/technetwork\/jet\/jetCookbook.html?component=dataGrid&amp;demo=cellBasedGrid\" target=\"_blank\" rel=\"noreferrer noopener\">data grid demo page<\/a><\/p>\n\n\n\n<p><em><strong>dashboard.html<\/strong><\/em>&nbsp;file code<\/p>\n\n\n\n<pre class=\"brush:xml\">&lt;oj-data-grid id=\"datagrid\" \n            style=\"width:100%;max-width:234px;height:130px\" \n            aria-label=\"Data Grid Cell Based Grid Demo\" \n            data=\"[[dataSource]]\"&gt;\n&lt;\/oj-data-grid&gt;\n<\/pre>\n\n\n\n<p><em><strong>dashboard.js<\/strong><\/em>&nbsp;file code, Here you can see how data array used as grid\u2019s data source\n\n<\/p>\n\n\n\n<pre class=\"brush:js\">\/*\n * Your dashboard ViewModel code goes here\n *\/\ndefine(['ojs\/ojcore', 'knockout', 'jquery','ojs\/ojknockout','ojs\/ojdatagrid', 'ojs\/ojarraydatagriddatasource'], \nfunction (oj, ko, $, ArrayDataProvider) {\n    function DashboardViewModel() {\n        var self = this;\n        \n         var dataArray = [\n            ['1', '2', '3'],\n            ['4', '5', '6'],\n            ['7', '8', '9']\n        ];\n        self.dataSource = new oj.ArrayDataGridDataSource(dataArray);\n        .\n        .\n<\/pre>\n\n\n\n<p>\n\nRun application and check\n\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" width=\"535\" height=\"418\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-data-grid-demo.jpg\" alt=\"Oracle JET Cookbook\" class=\"wp-image-24488\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-data-grid-demo.jpg 535w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2019\/04\/Oracle-JET-data-grid-demo-300x234.jpg 300w\" sizes=\"(max-width: 535px) 100vw, 535px\" \/><\/figure><\/div>\n\n\n\n<p>I\u2019ll add some more UI Components Demo in this post later, Keep an eye on this page.<\/p>\n\n\n\n<p><strong>Cheers&nbsp;&nbsp;Happy Learning<\/strong><\/p>\n\n\n\n<div class=\"attribution\">\n<table>\n<tbody>\n<tr>\n<td>\n<p>Published on Web Code Geeks with permission by Ashish Awasthi, partner at our <a href=\"\/\/www.webcodegeeks.com\/join-us\/wcg\/\" target=\"_blank\" rel=\"noopener noreferrer\">WCG program<\/a>. See the original article here: <a href=\"http:\/\/www.awasthiashish.com\/2019\/04\/oracle-jet-components-demo-using-cookbook-in-jdeveloper.html\" target=\"_blank\" rel=\"noopener noreferrer\">Oracle JET Components Demo Using Cookbook in Jdeveloper<\/a><\/p>\n<p>Opinions expressed by Web Code Geeks contributors are their own.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In this post, I am sharing how can we use Oracle JET Cookbook to understand basic UI components and How can we copy and use code from the cookbook. Here I am using JDeveloper 12.1.3 to create Oracle JET Components Demo Application. In the previous post, I have explained about&nbsp;creating a JET application using JDeveloper. &hellip;<\/p>\n","protected":false},"author":12692,"featured_media":920,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-24479","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Oracle JET Components Demo Using Cookbook in Jdeveloper - Web Code Geeks - 2026<\/title>\n<meta name=\"description\" content=\"Interested to learn about Oracle JET Cookbook? Check our article explaining how those two dashboards ease the instrumentation of Porcupine thread pools!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Oracle JET Components Demo Using Cookbook in Jdeveloper - Web Code Geeks - 2026\" \/>\n<meta property=\"og:description\" content=\"Interested to learn about Oracle JET Cookbook? Check our article explaining how those two dashboards ease the instrumentation of Porcupine thread pools!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/\" \/>\n<meta property=\"og:site_name\" content=\"Web Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webcodegeeks\" \/>\n<meta property=\"article:author\" content=\"https:\/\/facebook.com\/ashhish000\" \/>\n<meta property=\"article:published_time\" content=\"2019-04-22T09:15:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-04-25T10:49:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Ashish Awasthi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ashish__awasthi\" \/>\n<meta name=\"twitter:site\" content=\"@webcodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ashish Awasthi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/\"},\"author\":{\"name\":\"Ashish Awasthi\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/746b746daf99d152148eca75446941c0\"},\"headline\":\"Oracle JET Components Demo Using Cookbook in Jdeveloper\",\"datePublished\":\"2019-04-22T09:15:52+00:00\",\"dateModified\":\"2019-04-25T10:49:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/\"},\"wordCount\":766,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"articleSection\":[\"JavaScript\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/\",\"name\":\"Oracle JET Components Demo Using Cookbook in Jdeveloper - Web Code Geeks - 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"datePublished\":\"2019-04-22T09:15:52+00:00\",\"dateModified\":\"2019-04-25T10:49:26+00:00\",\"description\":\"Interested to learn about Oracle JET Cookbook? Check our article explaining how those two dashboards ease the instrumentation of Porcupine thread pools!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.webcodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JavaScript\",\"item\":\"https:\/\/www.webcodegeeks.com\/category\/javascript\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Oracle JET Components Demo Using Cookbook in Jdeveloper\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"name\":\"Web Code Geeks\",\"description\":\"Web Developers Resource Center\",\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.webcodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webcodegeeks\",\"https:\/\/x.com\/webcodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/746b746daf99d152148eca75446941c0\",\"name\":\"Ashish Awasthi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f7d5962e721af4cb01df8f894447ad50c65cb662e5b4b21332f3c4210eb052c2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f7d5962e721af4cb01df8f894447ad50c65cb662e5b4b21332f3c4210eb052c2?s=96&d=mm&r=g\",\"caption\":\"Ashish Awasthi\"},\"description\":\"An Oracle ACE, Blogger, Reviewer, Technical Lead working on Oracle ADF\",\"sameAs\":[\"http:\/\/www.awasthiashish.com\",\"https:\/\/facebook.com\/ashhish000\",\"https:\/\/www.linkedin.com\/in\/ashishkumarawasthi\/\",\"https:\/\/x.com\/ashish__awasthi\"],\"url\":\"https:\/\/www.webcodegeeks.com\/author\/ashish-awasthi\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Oracle JET Components Demo Using Cookbook in Jdeveloper - Web Code Geeks - 2026","description":"Interested to learn about Oracle JET Cookbook? Check our article explaining how those two dashboards ease the instrumentation of Porcupine thread pools!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/","og_locale":"en_US","og_type":"article","og_title":"Oracle JET Components Demo Using Cookbook in Jdeveloper - Web Code Geeks - 2026","og_description":"Interested to learn about Oracle JET Cookbook? Check our article explaining how those two dashboards ease the instrumentation of Porcupine thread pools!","og_url":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/","og_site_name":"Web Code Geeks","article_publisher":"https:\/\/www.facebook.com\/webcodegeeks","article_author":"https:\/\/facebook.com\/ashhish000","article_published_time":"2019-04-22T09:15:52+00:00","article_modified_time":"2019-04-25T10:49:26+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","type":"image\/jpeg"}],"author":"Ashish Awasthi","twitter_card":"summary_large_image","twitter_creator":"@ashish__awasthi","twitter_site":"@webcodegeeks","twitter_misc":{"Written by":"Ashish Awasthi","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#article","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/"},"author":{"name":"Ashish Awasthi","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/746b746daf99d152148eca75446941c0"},"headline":"Oracle JET Components Demo Using Cookbook in Jdeveloper","datePublished":"2019-04-22T09:15:52+00:00","dateModified":"2019-04-25T10:49:26+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/"},"wordCount":766,"commentCount":0,"publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","articleSection":["JavaScript"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/","url":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/","name":"Oracle JET Components Demo Using Cookbook in Jdeveloper - Web Code Geeks - 2026","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","datePublished":"2019-04-22T09:15:52+00:00","dateModified":"2019-04-25T10:49:26+00:00","description":"Interested to learn about Oracle JET Cookbook? Check our article explaining how those two dashboards ease the instrumentation of Porcupine thread pools!","breadcrumb":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#primaryimage","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.webcodegeeks.com\/javascript\/oracle-jet-components-demo-using-cookbook-in-jdeveloper\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.webcodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"JavaScript","item":"https:\/\/www.webcodegeeks.com\/category\/javascript\/"},{"@type":"ListItem","position":3,"name":"Oracle JET Components Demo Using Cookbook in Jdeveloper"}]},{"@type":"WebSite","@id":"https:\/\/www.webcodegeeks.com\/#website","url":"https:\/\/www.webcodegeeks.com\/","name":"Web Code Geeks","description":"Web Developers Resource Center","publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.webcodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.webcodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.webcodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webcodegeeks","https:\/\/x.com\/webcodegeeks"]},{"@type":"Person","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/746b746daf99d152148eca75446941c0","name":"Ashish Awasthi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/f7d5962e721af4cb01df8f894447ad50c65cb662e5b4b21332f3c4210eb052c2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f7d5962e721af4cb01df8f894447ad50c65cb662e5b4b21332f3c4210eb052c2?s=96&d=mm&r=g","caption":"Ashish Awasthi"},"description":"An Oracle ACE, Blogger, Reviewer, Technical Lead working on Oracle ADF","sameAs":["http:\/\/www.awasthiashish.com","https:\/\/facebook.com\/ashhish000","https:\/\/www.linkedin.com\/in\/ashishkumarawasthi\/","https:\/\/x.com\/ashish__awasthi"],"url":"https:\/\/www.webcodegeeks.com\/author\/ashish-awasthi\/"}]}},"_links":{"self":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/24479","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/users\/12692"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/comments?post=24479"}],"version-history":[{"count":0,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/24479\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media\/920"}],"wp:attachment":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media?parent=24479"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/categories?post=24479"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/tags?post=24479"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}