<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4301764760924839143</id><updated>2025-08-18T15:30:02.321+02:00</updated><category term="ADF"/><category term="JDeveloper 11g"/><category term="JDeveloper 12c"/><category term="JDeveloper 11g R2"/><category term="ADF BC"/><category term="Tuning"/><category term="REST"/><category term="ADF UI"/><category term="JET"/><category term="Bugs"/><category term="WebCenter"/><category term="Performance"/><category term="Security"/><category term="Integration"/><category term="Mobile"/><category term="ADF Task Flow"/><category term="Workarounds"/><category term="ADF Query"/><category term="SOA"/><category term="MDS"/><category term="WebLogic"/><category term="Alta UI"/><category term="JavaScript"/><category term="LOV"/><category term="CRUD"/><category term="NetBeans"/><category term="BPM 11g"/><category term="Groovy"/><category term="Validation"/><category term="Web Services"/><category term="Dynamic"/><category term="MAF"/><category term="12.2.1"/><category term="12.2.1.1"/><category term="Oracle Fusion"/><category term="Service Bus"/><category term="Spatial"/><category term="12.2.1.2"/><category term="Cloud"/><category term="TopLink"/><category term="UCM"/><category term="WebSockets"/><category term="BPM"/><category term="Tree"/><category term="Worklist"/><category term="Architecture"/><category term="BPEL"/><category term="Enterprise Manager"/><category term="UI Shell"/><category term="iPhone"/><category term="Bad Practices"/><category term="Coherence"/><category term="Location"/><category term="Reports"/><category term="Testing"/><category term="ACM"/><category term="Activation"/><category term="BPM 12c"/><category term="Contextual Events"/><category term="Forms"/><category term="Glassfish"/><category term="Layout"/><category term="Locking"/><category term="PopUp"/><category term="Proxy"/><category term="RDK"/><category term="RIDC"/><category term="Red Samurai"/><category term="Refresh"/><category term="Templates"/><category term="12.2.1.3"/><category term="ADS"/><category term="API"/><category term="Best Practices"/><category term="Bindings"/><category term="Build"/><category term="Cache"/><category term="Checkbox"/><category term="DVT"/><category term="Events"/><category term="Extension"/><category term="Features"/><category term="HTML"/><category term="JDBC"/><category term="Java"/><category term="MCS"/><category term="Microservices"/><category term="PS6"/><category term="User Data"/><category term="View Accessor"/><category term="Workspace"/><category term="ADF Essentials"/><category term="AIA"/><category term="Application Module"/><category term="Automation"/><category term="Bug"/><category term="DB View"/><category term="Data Source"/><category term="Database"/><category term="Declarative Mode"/><category term="Excel"/><category term="Extensions"/><category term="Facets"/><category term="GitHub"/><category term="Hybrid"/><category term="Integrated WLS"/><category term="Iterator"/><category term="JQuery"/><category term="Jasper"/><category term="List View"/><category term="Logging"/><category term="MicroFrontends"/><category term="Multitasking"/><category term="Oracle OpenWorld"/><category term="PCS"/><category term="Poll"/><category term="Radio Group"/><category term="Rollback"/><category term="Router"/><category term="Sequence"/><category term="Transaction"/><category term="UI"/><category term="UKOUG"/><category term="Update"/><category term="Web Tier"/><title type='text'>Andrejus Baranovskis Blog - JDev/ADF Samples list</title><subtitle type='html'>Blog about Oracle technology</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default?start-index=26&amp;max-results=25'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>657</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-5829853564710521035</id><published>2019-06-04T14:32:00.000+02:00</published><updated>2019-06-04T14:32:02.860+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><title type='text'> JDev/ADF sample - ADF Faces and Client Side Value with innerHTML</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.com/2019/06/adf-faces-and-client-side-value-with.html&quot; target=&quot;_blank&quot;&gt;ADF Faces and Client Side Value with innerHTML&lt;/a&gt;. In ADF Faces you can leverage the full power of JavaScript. I will explain how you could assign a value from ADF Faces component to the plain HTML div.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/ADFClientSideValueApp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/5829853564710521035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/5829853564710521035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/5829853564710521035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/5829853564710521035'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2019/06/jdevadf-sample-adf-faces-and-client.html' title=' JDev/ADF sample - ADF Faces and Client Side Value with innerHTML'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-1620916386616516329</id><published>2019-02-20T21:18:00.004+01:00</published><updated>2019-02-20T21:18:58.464+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><title type='text'> JDev/ADF sample - Intercepting ADF Table Column Show/Hide Event with Custom Change Manager Class</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.com/2019/02/intercepting-adf-table-column-showhide.html&quot; target=&quot;_blank&quot;&gt;Intercepting ADF Table Column Show/Hide Event with Custom Change Manager Class&lt;/a&gt;. Ever wondered how to intercept ADF table column show/hide event from ADF Panel Collection component? Yes, you could use ADF MDS functionality to store user preference for table visible columns. But what if you would want to implement it yourself without using MDS? Actually, this is possible through custom persistence manager class. I will show you how.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/TableColumnHanlderApp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/1620916386616516329/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/1620916386616516329' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/1620916386616516329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/1620916386616516329'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2019/02/jdevadf-sample-intercepting-adf-table.html' title=' JDev/ADF sample - Intercepting ADF Table Column Show/Hide Event with Custom Change Manager Class'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-5679224485325509981</id><published>2019-01-19T19:31:00.000+01:00</published><updated>2019-01-19T19:31:12.396+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><category scheme="http://www.blogger.com/atom/ns#" term="JDBC"/><title type='text'> JDev/ADF sample - Oracle ADF BC Reusing SQL from Statement Cache</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.com/2019/01/oracle-adf-bc-reusing-sql-from.html&quot; target=&quot;_blank&quot;&gt;Oracle ADF BC Reusing SQL from Statement Cache&lt;/a&gt;. Oracle ADF BC by default is trying to reuse prepared SQL query from statement cache. It works this way when ADF BC runs with DB pooling off (jbo.doconnectionpooling=false). Normally we tune ADF application to run with DB pooling on (jbo.doconnectionpooling=true), this allows to release unused DB connection back to the pool when a request is completed (and in this case, statement cache will not be used anyway). If View Object is re-executed multiple times during the same request - in this situation, it will use statement cache too.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/PreparedStatementApp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/5679224485325509981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/5679224485325509981' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/5679224485325509981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/5679224485325509981'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2019/01/jdevadf-sample-oracle-adf-bc-reusing.html' title=' JDev/ADF sample - Oracle ADF BC Reusing SQL from Statement Cache'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-7729739020934369372</id><published>2018-12-23T11:03:00.001+01:00</published><updated>2018-12-23T11:03:05.370+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><title type='text'> JDev/ADF sample - Understanding Attributes Enum in ADF BC Row Class</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.com/2018/12/understanding-attributes-enum-in-adf-bc.html&quot; target=&quot;_blank&quot;&gt;Understanding Attributes Enum in ADF BC Row Class&lt;/a&gt;. Did you ever wonder why Attributes Enum is generated by JDeveloper in Entity or View Row class? Attributes Enum holds a collection of attribute names and there is a set of static variables with attribute indexes. These indexes are used to locate attribute in getter/setter. Attributes Enum is a structure which is required for JDeveloper on design time to generate Java code. On runtime Attributes Enum is needed only as long as you are using a static variable index in the getter/setter.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/ADFAttributEnumApp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/7729739020934369372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/7729739020934369372' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/7729739020934369372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/7729739020934369372'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/12/jdevadf-sample-understanding-attributes.html' title=' JDev/ADF sample - Understanding Attributes Enum in ADF BC Row Class'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-3707267962361614698</id><published>2018-11-25T09:48:00.003+01:00</published><updated>2018-11-25T09:48:24.590+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="Jasper"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><title type='text'> JDev/ADF sample - Oracle ADF + Jasper Visualize.js = Awesome</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.com/2018/11/oracle-adf-jasper-visualizejs-awesome.html&quot; target=&quot;_blank&quot;&gt;Oracle ADF + Jasper Visualize.js = Awesome&lt;/a&gt;. This week I was working on a task to integrate &lt;a href=&quot;https://community.jaspersoft.com/project/visualizejs&quot; target=&quot;_blank&quot;&gt;Jasper Visualize.js&lt;/a&gt; into Oracle ADF application JSF page fragment. I must say integration was successful and Jasper report renders very well in Oracle ADF screen with the help of Visualize.js. Great thing about Visualize.js - it renders report in ADF page through client side HTML/JS, there is no iFrame. Report HTML structure is included into HTML generated by ADF, this allows to use CSS to control report size and make it responsive.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/MultiTaskFlowAppADFJasper&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/3707267962361614698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/3707267962361614698' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3707267962361614698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3707267962361614698'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/11/jdevadf-sample-oracle-adf-jasper.html' title=' JDev/ADF sample - Oracle ADF + Jasper Visualize.js = Awesome'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-8240152354806667708</id><published>2018-07-15T08:49:00.001+02:00</published><updated>2018-07-15T08:50:07.679+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI"/><category scheme="http://www.blogger.com/atom/ns#" term="Performance"/><category scheme="http://www.blogger.com/atom/ns#" term="Tuning"/><title type='text'>JDev/ADF sample - ADF Postback Payload Size Optimization</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.com/2018/07/adf-postback-payload-size-optimization.html&quot; target=&quot;_blank&quot;&gt;ADF Postback Payload Size Optimization&lt;/a&gt;. Recently I came across property called &lt;i&gt;oracle.adf.view.rich.POSTBACK_PAYLOAD_TYPE&lt;/i&gt;. This property helps to optimize postback payload size. It is described in ADF Faces configuration section - &lt;a href=&quot;https://docs.oracle.com/middleware/1221/adf/develop-faces/GUID-9F18F829-1E37-4C36-9C25-1DE334CAB330.htm#ADFUI574&quot; target=&quot;_blank&quot;&gt;A.2.3.16 Postback Payload Size Optimization&lt;/a&gt;. ADF partial request is executing HTTP post with values from all fields included. When postback property is set to &lt;i&gt;dirty&lt;/i&gt;, it will include into HTTP post only changed values. As result - server will get only changed attributes, potentially this can reduce server time processing and make HTTP request size smaller. This especially can be important for large forms, with many fields.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/ADFPostbackOptimizationApp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/8240152354806667708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/8240152354806667708' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8240152354806667708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8240152354806667708'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/07/jdevadf-sample-effective-way-to-get.html' title='JDev/ADF sample - ADF Postback Payload Size Optimization'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-5404197314444697988</id><published>2018-05-29T21:38:00.002+02:00</published><updated>2018-05-29T21:38:38.046+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><title type='text'>JDev/ADF sample - Effective Way to Get Changed Rows in ADF BC API</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.com/2018/05/effective-way-to-get-changed-rows-in.html&quot; target=&quot;_blank&quot;&gt;Effective Way to Get Changed Rows in ADF BC API&lt;/a&gt;. Did you ever wondered how to get all changed rows in the transaction, without iterating through entire row set? It turns out to be pretty simple with ADF BC API method - getAllEntityInstancesIterator, which is invoked for Entity Definition attached to current VO.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/ADFChangedRowProcessingApp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/5404197314444697988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/5404197314444697988' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/5404197314444697988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/5404197314444697988'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/05/jdevadf-sample-effective-way-to-get.html' title='JDev/ADF sample - Effective Way to Get Changed Rows in ADF BC API'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-3407333841262384933</id><published>2018-05-27T07:27:00.003+02:00</published><updated>2018-05-29T21:34:40.877+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="Performance"/><category scheme="http://www.blogger.com/atom/ns#" term="REST"/><title type='text'>JDev/ADF sample - Oracle ADF BC REST - Performance Review and Tuning</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2018/05/oracle-adf-bc-rest-performance-review.html&quot; target=&quot;_blank&quot;&gt;Oracle ADF BC REST - Performance Review and Tuning&lt;/a&gt;. 
I thought to check how well ADF BC REST scales and how fast it performs. For that reason, I implemented sample ADF BC REST application and executed JMeter stress load test against it. You can access source code for application and JMeter script on my&amp;nbsp;&lt;a href=&quot;https://github.com/abaranovskis-redsamurai/blogvisitcounter&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt; repository. Application is called Blog Visitor Counter app for a reason - I&#39;m using same app to count blog visitors. This means each time you are accessing blog page - ADF BC REST service is triggered in the background and it logs counter value with timestamp (no personal data).&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/blogvisitcounter&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/3407333841262384933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/3407333841262384933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3407333841262384933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3407333841262384933'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/05/jdevadf-sample-microservice-approach_27.html' title='JDev/ADF sample - Oracle ADF BC REST - Performance Review and Tuning'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-8698757766798328164</id><published>2018-05-17T19:26:00.001+02:00</published><updated>2018-05-17T19:26:34.193+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Architecture"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="JET"/><category scheme="http://www.blogger.com/atom/ns#" term="MicroFrontends"/><category scheme="http://www.blogger.com/atom/ns#" term="Microservices"/><title type='text'>JDev/ADF sample - Microservice Approach for Web Development - Micro Frontends</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.lt/2018/05/microservice-approach-for-web.html&quot; target=&quot;_blank&quot;&gt;Microservice Approach for Web Development - Micro Frontends&lt;/a&gt;. Wondering what micro frontends term means? Check micro frontends description here. Simply speaking, micro frontend must implement business logic from top to bottom (database, middleware and UI) in isolated environment, it should be reusable and pluggable into main application UI shell. There must be no shared variables between micro frontends. Advantage - distributed teams can work on separate micro frontends, this improves large and modular system development. There is runtime advantage too - if one of the frontends stops working, main application should continue to work.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/warsaw&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/8698757766798328164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/8698757766798328164' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8698757766798328164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8698757766798328164'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/05/jdevadf-sample-microservice-approach.html' title='JDev/ADF sample - Microservice Approach for Web Development - Micro Frontends'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-7307672315317257547</id><published>2018-03-22T18:58:00.000+01:00</published><updated>2018-03-22T18:58:05.335+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><title type='text'>JDev/ADF sample - ADF Declarative Component Example</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.lt/2018/03/adf-declarative-component-example.html&quot; target=&quot;_blank&quot;&gt;ADF Declarative Component Example&lt;/a&gt;. ADF Declarative Component support is popular ADF framework feature, but in this post I would like to explain it from slightly different angle. I will show how to pass ADF binding and Java bean objects into component through properties, in these cases when component must show data from ADF bindings, such approach could offer robustness and simplify component development.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/ADFComponentApp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/7307672315317257547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/7307672315317257547' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/7307672315317257547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/7307672315317257547'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/03/jdevadf-sample-adf-declarative.html' title='JDev/ADF sample - ADF Declarative Component Example'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-3034815830067362063</id><published>2018-03-11T19:23:00.001+01:00</published><updated>2018-03-11T19:23:17.709+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><title type='text'>JDev/ADF sample - Find In Cache By Key ADF BC API Method Usage</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.lt/2018/03/find-in-cache-by-key-adf-bc-api-method.html&quot; target=&quot;_blank&quot;&gt;Find In Cache By Key ADF BC API Method Usage&lt;/a&gt;. What if you need to verify - if row with given key exists in fetched rowset? This could be useful while implementing validation logic. ADF BC API method findByKey - will trigger SQL call and fetch row from DB, if row with given key doesn&#39;t exist in fetched rowset. Luckily there is ADF BC API method called &lt;i&gt;findInCacheByKey&lt;/i&gt;, this method only checks for row in fetched rowset, without going to DB - very convenient in certain situations, when you actually don&#39;t want to bring record from DB, if it wasn&#39;t fetched.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/findbykeyincacheapp&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/3034815830067362063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/3034815830067362063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3034815830067362063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3034815830067362063'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/03/jdevadf-sample-find-in-cache-by-key-adf.html' title='JDev/ADF sample - Find In Cache By Key ADF BC API Method Usage'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-3457515507700713058</id><published>2018-02-25T05:58:00.000+01:00</published><updated>2018-02-25T05:59:18.502+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF Task Flow"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="Microservices"/><title type='text'>JDev/ADF sample - Microservices with Oracle ADF Remote Regions</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2018/02/microservices-with-oracle-adf-remote.html&quot; target=&quot;_blank&quot;&gt;Microservices with Oracle ADF Remote Regions&lt;/a&gt;. ADF remote regions - functionality available in the latest ADF 12c versions. ADF remote region runs on different server and content is delivered to consuming module through ADF remote region servlet. This allows to decouple large enterprise system into separate modules, each running independently on separate servers. Gained advantage - system becomes more scalable and reliable, even if several modules will be down, system will continue to be functional.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/remoteregions&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/3457515507700713058/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/3457515507700713058' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3457515507700713058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3457515507700713058'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/02/jdevadf-sample-microservices-with.html' title='JDev/ADF sample - Microservices with Oracle ADF Remote Regions'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-2557946077118890327</id><published>2018-01-29T22:55:00.006+01:00</published><updated>2018-01-29T22:55:56.412+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF Task Flow"/><category scheme="http://www.blogger.com/atom/ns#" term="Bugs"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="Tuning"/><title type='text'>JDev/ADF sample - Avoid Blind SQL Call from ADF Task Flow Method</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.lt/2018/01/avoid-blind-sql-call-from-adf-task-flow.html&quot; target=&quot;_blank&quot;&gt;Avoid Blind SQL Call from ADF Task Flow Method&lt;/a&gt;. Keep an eye open on ADF Task Flow Method Call activities where methods from ADF Bindings are called. JDEV 12c sets deferred refresh for ADF binding iterators related to TF Method Call activities and this causing blind SQL to be executed. Blind SQL - query without bind variables.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=1hNDNOaPqc3TvWVXmPlFVctxyE2Radqtg&quot;&gt;ADFTFCallBindingApp.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/2557946077118890327/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/2557946077118890327' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/2557946077118890327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/2557946077118890327'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2018/01/jdevadf-sample-avoid-blind-sql-call.html' title='JDev/ADF sample - Avoid Blind SQL Call from ADF Task Flow Method'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-1053835063486843578</id><published>2017-12-21T19:37:00.002+01:00</published><updated>2017-12-21T19:37:11.812+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI"/><category scheme="http://www.blogger.com/atom/ns#" term="Alta UI"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="JQuery"/><title type='text'>JDev/ADF sample - Recipe for JQuery Menu integration into ADF Faces</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.lt/2017/12/recipe-for-jquery-menu-integration-into.html&quot; target=&quot;_blank&quot;&gt;Recipe for JQuery Menu integration into ADF Faces&lt;/a&gt;. May be you are thinking to add some fresh looking element into your ADF app? I would propose JQuery menu. Advantage of such menu - it is purely client side implementation and it allows user to navigate through items really fast. Besides fast navigation, it looks great too and can be easily customized.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=1Uo37gDBVc7NSJcIowMBK2Q4YhFX9_5e8&quot;&gt;ADFJQueryMenuApp.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/1053835063486843578/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/1053835063486843578' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/1053835063486843578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/1053835063486843578'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/12/jdevadf-sample-recipe-for-jquery-menu.html' title='JDev/ADF sample - Recipe for JQuery Menu integration into ADF Faces'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-3843620101946232646</id><published>2017-12-05T19:54:00.001+01:00</published><updated>2017-12-05T19:54:34.481+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI"/><category scheme="http://www.blogger.com/atom/ns#" term="Alta UI"/><category scheme="http://www.blogger.com/atom/ns#" term="Integration"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="JET"/><title type='text'>JDev/ADF sample - JET Composite Component in ADF Faces UI - Deep Integration</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.de/2017/12/jet-composite-component-in-adf-faces-ui.html&quot; target=&quot;_blank&quot;&gt;JET Composite Component in ADF Faces UI - Deep Integration&lt;/a&gt;. Finding ways of further JET integration into ADF Faces is important. Next step would be to implement editable grid JET based component and integrate it into ADF to improve fast user data entry experience..&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/jetadfcomposite&quot; target=&quot;_blank&quot;&gt;jetadfcomposite&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/3843620101946232646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/3843620101946232646' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3843620101946232646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/3843620101946232646'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/12/jdevadf-sample-jet-composite-component.html' title='JDev/ADF sample - JET Composite Component in ADF Faces UI - Deep Integration'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-988880005438171803</id><published>2017-11-10T19:24:00.001+01:00</published><updated>2017-11-10T19:24:36.674+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="Performance"/><category scheme="http://www.blogger.com/atom/ns#" term="Tuning"/><title type='text'>JDev/ADF sample - ADF Performance Story - This Time Developer Was Wrong</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://andrejusb.blogspot.lt/2017/11/adf-performance-story-this-time.html&quot; target=&quot;_blank&quot;&gt;ADF Performance Story - This Time Developer Was Wrong&lt;/a&gt;. ADF is fast. If ADF application is slow, most likely this is related to development mistakes. I would like to tell you one story, based on my ADF tuning experience. Problem description: ADF application runs fast in DEV, when DB size is small. Same application runs slow in TEST/PROD, when DB size is large. Question - what is slow. Answer - slow means forms are loading slow. Ok, lets go to the story.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=1s7AkpRXYULTCHEqy8jVSnpN7Y7NjmBfm&quot;&gt;ADFRangeSizeApp.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/988880005438171803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/988880005438171803' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/988880005438171803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/988880005438171803'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/11/jdevadf-sample-adf-performance-story.html' title='JDev/ADF sample - ADF Performance Story - This Time Developer Was Wrong'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-8375607843555458521</id><published>2017-09-17T18:51:00.001+02:00</published><updated>2017-09-17T18:51:09.801+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="12.2.1.3"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="REST"/><title type='text'>JDev/ADF sample - ADF BC REST Service from ADF Library JAR</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/09/adf-bc-rest-service-from-adf-library-jar.html&quot; target=&quot;_blank&quot;&gt;ADF BC REST Service from ADF Library JAR&lt;/a&gt;. I had assignment to enable ADF BC REST for existing ADF application, which was developed with multiple ADF libraries. ADF BC REST was supposed to be enabled for one of the ADF libraries and then accessed through Master application. All ADF BC REST samples usually show how to enable REST inside Master application itself. I was curious if it will work to enable ADF BC REST and package it into ADF library, which is consumed from Master application. It worked and I would like to share sample app.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=0Bw_kr1_tXc-eLXI5UElTTUlBSkE&quot;&gt;adfbcrest.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/8375607843555458521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/8375607843555458521' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8375607843555458521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8375607843555458521'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/09/jdevadf-sample-adf-bc-rest-service-from.html' title='JDev/ADF sample - ADF BC REST Service from ADF Library JAR'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-388354114810322091</id><published>2017-09-08T08:54:00.000+02:00</published><updated>2017-09-08T08:54:19.775+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CRUD"/><category scheme="http://www.blogger.com/atom/ns#" term="JET"/><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans"/><category scheme="http://www.blogger.com/atom/ns#" term="REST"/><title type='text'>JDev/ADF sample - Oracle JET Simple Table with Fake JSON Server</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/09/oracle-jet-simple-table-with-fake-json.html&quot; target=&quot;_blank&quot;&gt;Oracle JET Simple Table with Fake JSON Server&lt;/a&gt;. What if you want to build JET UI, but there is no back-end REST service ready yet. You could use static JSON data inside JET app and load it from the JSON file. This works, but data retrieval logic will need to be changed after REST service will be ready. This is not productive. Ideally you would like to have fake REST service to simulate REST calls from JET UI, until real REST back-end is ready.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/jetsimplecrud&quot; target=&quot;_blank&quot;&gt;jetsimplecrud&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/388354114810322091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/388354114810322091' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/388354114810322091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/388354114810322091'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/09/jdevadf-sample-oracle-jet-simple-table.html' title='JDev/ADF sample - Oracle JET Simple Table with Fake JSON Server'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-4384034364690310387</id><published>2017-09-03T13:15:00.000+02:00</published><updated>2017-09-03T13:15:22.724+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="12.2.1.3"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="Bugs"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="Workarounds"/><title type='text'>JDev/ADF sample - ADF 12c Table CRUD Fix for Auto Focus</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/09/adf-12c-table-crud-fix-for-auto-focus.html&quot; target=&quot;_blank&quot;&gt;ADF 12c Table CRUD Fix for Auto Focus&lt;/a&gt;. I had a post about how to improve user data entry for ADF table with auto focus for new row - &lt;a href=&quot;http://andrejusb.blogspot.lt/2014/03/improving-adf-ui-table-crud.html&quot; target=&quot;_blank&quot;&gt;Improving ADF UI Table CRUD Functionality with Auto Focus&lt;/a&gt;. If you follow comments thread for that post - you will see described approach doesn&#39;t work exactly as it should in ADF 12c (focus is set for new row but later is lost after tab navigation - it should move focus to another column). Thanks to the community we have simple fix for this issue, read OTN Forum thread - &lt;a href=&quot;https://community.oracle.com/thread/4007524?start=15&amp;amp;tstart=0&quot; target=&quot;_blank&quot;&gt;Set Focus on CreateINsert row in ADF Table&lt;/a&gt;. I hope Oracle will fix this functionality in the next ADF versions (currently they say it is expected behaviour, and I don&#39;t agree with this). But for now - fix does the job.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=0Bw_kr1_tXc-eSEZyUnJ5OE15Z0k&quot;&gt;ADFTableFocusApp_v2.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/4384034364690310387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/4384034364690310387' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/4384034364690310387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/4384034364690310387'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/09/jdevadf-sample-adf-12c-table-crud-fix.html' title='JDev/ADF sample - ADF 12c Table CRUD Fix for Auto Focus'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-6448386921386593130</id><published>2017-08-30T16:54:00.001+02:00</published><updated>2017-08-30T16:54:22.293+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="12.2.1.2"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="Performance"/><title type='text'>JDev/ADF sample - ADF Client Side Validation with JavaScript</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/08/adf-client-side-validation-with.html&quot; target=&quot;_blank&quot;&gt;ADF Client Side Validation with JavaScript&lt;/a&gt;. In my previous post I explained how to use JS client side formatter for ADF Faces input components - &lt;a href=&quot;http://andrejusb.blogspot.lt/2017/07/adf-goes-client-side-ui-performance.html&quot; target=&quot;_blank&quot;&gt;ADF Goes Client Side - UI Performance Boost with JavaScript&lt;/a&gt;. The same principle can be applied for client side validation. Most likely you are not going to implement complex validation rules on the client side, but for simple checks - it will be perfect. There will be no roundtrip to the server and this will allow to improve user experience.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=0Bw_kr1_tXc-ea0h5MzhONkJfS0k&quot;&gt;ADFFormattingApp_v2.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/6448386921386593130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/6448386921386593130' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/6448386921386593130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/6448386921386593130'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/08/jdevadf-sample-adf-client-side.html' title='JDev/ADF sample - ADF Client Side Validation with JavaScript'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-1067162400416963823</id><published>2017-07-29T18:06:00.000+02:00</published><updated>2017-07-29T18:06:02.673+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="JET"/><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans"/><category scheme="http://www.blogger.com/atom/ns#" term="REST"/><title type='text'>JDev/ADF sample -  Oracle JET Busy Context API to Control Asynchronous REST Calls</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/07/oracle-jet-busy-context-api-to-control.html&quot; target=&quot;_blank&quot;&gt;Oracle JET Busy Context API to Control Asynchronous REST Calls&lt;/a&gt;. I have received feedback from users working with JET UI - sometimes it is not obvious that action button was pressed, users tend to press same button again very fast, which leads to parallel REST calls executing at the same time. In JET - REST call is executed asynchronously, this makes user to believe action was done instantly when button was pressed. However, REST call still may run in the background - while user will be trying to call same service again. While in most of the cases such behaviour is fine, still there are use cases when we want to block action button, until REST response is not received (while response is executed, button will be disabled - this will give visual feedback to the user about action still executing). JET provides &lt;a href=&quot;http://www.oracle.com/webfolder/technetwork/jet/jsdocs/oj.BusyContext.html&quot; target=&quot;_blank&quot;&gt;Busy Context&lt;/a&gt; API to handle asynchronous REST calls in synchronous way.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/jetcrud&quot; target=&quot;_blank&quot;&gt;JETCRUD&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/1067162400416963823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/1067162400416963823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/1067162400416963823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/1067162400416963823'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/07/jdevadf-sample-oracle-jet-busy-context.html' title='JDev/ADF sample -  Oracle JET Busy Context API to Control Asynchronous REST Calls'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-2431744057523245613</id><published>2017-07-22T18:02:00.001+02:00</published><updated>2017-07-22T18:02:54.085+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="12.2.1.2"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="Performance"/><title type='text'>JDev/ADF sample -  ADF Goes Client Side - UI Performance Boost with JavaScript</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/07/adf-goes-client-side-ui-performance.html&quot; target=&quot;_blank&quot;&gt;ADF Goes Client Side - UI Performance Boost with JavaScript&lt;/a&gt;. If you would like to boost ADF UI performance, you should look into client side validation and formatting options possible to be done in ADF UI. Today I will describe how you can implement client side converter, to format number value on client side, without making request to the server. Same approach could be used to implement client side validators. You can raise error message and it will be assigned to UI field in the same way, just like any standard ADF error message. While this approach is documented long ago in Oracle ADF developer guide - &lt;a href=&quot;http://docs.oracle.com/cd/E14571_01/web.1111/b31973/af_validate.htm#ADFUI360&quot; target=&quot;_blank&quot;&gt;How To Create Client Side Converter&lt;/a&gt;, it is not well known and not often used.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=0Bw_kr1_tXc-eT1dfbTUxRHhfUlU&quot;&gt;ADFFormattingApp.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/2431744057523245613/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/2431744057523245613' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/2431744057523245613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/2431744057523245613'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/07/jdevadf-sample-adf-goes-client-side-ui.html' title='JDev/ADF sample -  ADF Goes Client Side - UI Performance Boost with JavaScript'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-4135772157693261296</id><published>2017-07-16T19:23:00.001+02:00</published><updated>2017-07-16T19:23:32.744+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><title type='text'>JDev/ADF sample -  ADF BC - Create View Object From Query with Custom Implementation Class</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/07/adf-bc-create-view-object-from-query.html&quot; target=&quot;_blank&quot;&gt;ADF BC - Create View Object From Query with Custom Implementation Class&lt;/a&gt;. I had a request to explain how to create dynamic ADF BC VO from SQL statement and set custom VO implementation class for newly created VO instance. Custom VO implementation class extends from ADF BC ViewObjectImpl and overrides super method.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=0Bw_kr1_tXc-eZ2Z4M19XNEVrS1U&quot;&gt;ADFVOFromSQLApp.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/4135772157693261296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/4135772157693261296' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/4135772157693261296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/4135772157693261296'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/07/jdevadf-sample-adf-bc-create-view.html' title='JDev/ADF sample -  ADF BC - Create View Object From Query with Custom Implementation Class'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-4596999820309537395</id><published>2017-07-10T21:40:00.001+02:00</published><updated>2017-07-10T21:40:32.553+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADF"/><category scheme="http://www.blogger.com/atom/ns#" term="JDeveloper 12c"/><category scheme="http://www.blogger.com/atom/ns#" term="Proxy"/><category scheme="http://www.blogger.com/atom/ns#" term="Workarounds"/><title type='text'>JDev/ADF sample -  ADF 12c BC Proxy User DB Connection and Save Point Error</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.co.at/2017/07/adf-12c-bc-proxy-user-db-connection-and.html&quot; target=&quot;_blank&quot;&gt;ADF 12c BC Proxy User DB Connection and Save Point Error&lt;/a&gt;. If you are modernising Oracle Forms system, high chance you need to rely on DB proxy connection. Read more about it in my previous post for ADF 11g - &lt;a href=&quot;http://andrejusb.blogspot.cz/2012/03/extending-application-module-for-adf-bc.html&quot; target=&quot;_blank&quot;&gt;Extending Application Module for ADF BC Proxy User DB Connection&lt;/a&gt;. It works in the same way for ADF 12c, but there is issue related to handling DB error, when DB proxy connection is on. DB error is propagated to ADF but is being substituted by save point error (as result - user would not see original error from DB). It seems like related to JDBC driver in 12c. The workaround is to override ADF SQL builder class and disable save point error propagation (there might be better ways to workaround it).&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://docs.google.com/uc?export=download&amp;amp;id=0Bw_kr1_tXc-eNGF2Q3FUaUJQUTg&quot;&gt;AMExtendApp_v3.zip&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/4596999820309537395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/4596999820309537395' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/4596999820309537395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/4596999820309537395'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/07/jdevadf-sample-adf-12c-bc-proxy-user-db.html' title='JDev/ADF sample -  ADF 12c BC Proxy User DB Connection and Save Point Error'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4301764760924839143.post-8333710900981918005</id><published>2017-07-06T08:31:00.001+02:00</published><updated>2017-07-06T08:31:13.057+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hybrid"/><category scheme="http://www.blogger.com/atom/ns#" term="JET"/><category scheme="http://www.blogger.com/atom/ns#" term="Location"/><title type='text'>JDev/ADF sample - Working with Location and Permissions in JET Hybrid</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://andrejusb.blogspot.lt/2017/07/working-with-location-and-permissions.html&quot; target=&quot;_blank&quot;&gt;Working with Location and Permissions in JET Hybrid&lt;/a&gt;. What if you want to access mobile device location data from JET Hybrid application? This can be achieved with &lt;a href=&quot;https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-geolocation/&quot; target=&quot;_blank&quot;&gt;Cordova Geolocation plugin&lt;/a&gt;. But you want it to be nicely done and want to make sure application is granted with permission to access location information. Use &lt;a href=&quot;https://www.npmjs.com/package/cordova-plugin-android-permissions&quot; target=&quot;_blank&quot;&gt;Cordova Permissions plugin&lt;/a&gt; for that.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;Download - &lt;a href=&quot;https://github.com/abaranovskis-redsamurai/rslocationapp&quot; target=&quot;_blank&quot;&gt;rslocationapp&lt;/a&gt;&lt;/ol&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://andrejusb-samples.blogspot.com/feeds/8333710900981918005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4301764760924839143/8333710900981918005' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8333710900981918005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4301764760924839143/posts/default/8333710900981918005'/><link rel='alternate' type='text/html' href='http://andrejusb-samples.blogspot.com/2017/07/jdevadf-sample-working-with-location.html' title='JDev/ADF sample - Working with Location and Permissions in JET Hybrid'/><author><name>Andrej Baranovskij</name><uri>http://www.blogger.com/profile/04468230464412457426</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtQ6y1WfnZZ1InInh-abQGCi5iMQDsatwgM7Gvvf7gE2ePpXqAzDKKrdrcmDVWtkjv-RZSdm_FmQ0rn8xSq7UCZNSZPMmo-7aIhwRv4gxV2LW5QhOEzHdNmXjshPyk8d4/s99/Screen+Shot+2018-06-18+at+20.28.41.png'/></author><thr:total>0</thr:total></entry></feed>