ODC Appreciation Day : Timeline component in Oracle JET, Data Visualization Cloud, APEX and ADF DVT: #ThanksODC

Here is my entry for the Oracle Developer Community ODC Appreciation Day (#ThanksODC).

It is quite hard to make a choice for a feature to write about. So many to talk about. And almost every day another favorite of the month. Sliding time windows. The Oracle Developer Community – well, that is us. All developers working with Oracle technology, sharing experiences and ideas, helping each other with inspiration and solutions to challenges, making each other (more...)

ADF 12c Table CRUD Fix for Auto Focus

I had a post about how to improve user data entry for ADF table with auto focus for new row - Improving ADF UI Table CRUD Functionality with Auto Focus. If you follow comments thread for that post - you will see described approach doesn'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 (more...)

ADF Client Side Validation with JavaScript

In my previous post I explained how to use JS client side formatter for ADF Faces input components - ADF Goes Client Side - UI Performance Boost with JavaScript. 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 (more...)

Oracle Java Cloud Service – Scaling and Cluster Setup for ADF

Last couple of weeks I was busy preparing to my OOW'17 session about estimating Java Cloud Service performance for ADF application. I was running stress tests against various JCS instance configurations to be able to create performance estimation methodology. I will describe this methodology on OOW, but here today will list key steps required to scale up JCS instance.

Let's assume you are running single cloud node with 1 CPU and 7.5 GB RAM. (more...)

ADF Goes Client Side – UI Performance Boost with JavaScript

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 (more...)

ADF BC – Create View Object From Query with Custom Implementation Class

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:


There is a method createViewObjectFromQueryStmt, in previous ADF versions this method had two parameters - VO instance name and SQL statement. In current ADF 12c - there is a second signature of the same (more...)

ADF 12c BC Proxy User DB Connection and Save Point Error

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 - Extending Application Module for ADF BC Proxy User DB Connection. 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 (more...)

Fixes for ADF Cloud User Experience Rapid Development Kit (RDK) UI Layout Issues

If you was evaluating Oracle RDK UI template, probably you noticed information popup coming up, when RDK home page is loaded. Popup is loaded through showPopupBehavior listener, which is executed on Welcome page load event. Such popup is not required in practice, and usually is disabled. But as soon as you disable it, there will be layout issues with Welcome page. User information widget will not align the name and menu navigation items will not (more...)

Nice Trick to Get ADF LOV Description Text

I will tell you about nice trick to display LOV description. Usually you would create separate attribute in VO for LOV description and base LOV on this attribute (read about it in my previous post - Defining the LOV on a Reference Attribute in Oracle ADF 11g). But there is one more way - it makes it much faster to define LOV on description, but you should be aware about additional SQL statement executed (more...)

Hey JAVA-developer, why don’t you love your database

Why this post?

Partly, this blogpost is a result of a promise to Lukas Eder. Basically my vision adheres quite nicely to the “Thick Database” driven by Bryn Llewellyn and Toon Koppelaars who, understandibly, drive this from an Oracle perspective.
It –more than of course- also nicely fits EnterpriseDB or even vanilla PostgreSQL database landscapes.

There is apparently still so much confusion in the world on the how, why and what of (more...)

ADF PopUp Event Context Launcher

I will describe how you could use ADF popup event context to pass parameters into popup. This could be useful if you want to develop reusable popup, which should accept different type of parameters from various launcher components.

In this example - popup is loaded from context info. Launcher component - output text is assigned with attribute, reading its value from binding. Our goal is to pass attribute value into popup:


In order to be (more...)

#DEVCAMP17 wrap up

 

Yesterday I attend the annual barcamp DEVCAMP of the DOAG development community. There are mostly developers with SQL, PL/SQL, Forms & Reports, ADF, JET background and some Java, Javascript and APEX developers too. And not to forget: 1 dba and some managers. Here are my summary.

I arrived on evening before just in time for the life cooking event and later at the bar to meet lot of the people I already know and some new too.

The morning begins with (more...)

#DOAG2016 wrap up

doag_wegweiser

Another DOAG is over and here are my summary.

Day 1

Unfortunately the early train from duesseldorf arrives not before 9:30, so I missed the first morning slot. But on the other hand I this was the slot where I had to decide between 8 presentations, which I’m interested in.

The first soft skill presentation was about creative techniques beyond brain storming. The mentioned 3 techniques was all unknown for me, maybe I give it (more...)

Set all WebLogic log levels to “Inherit” via WLST

Logging is a very useful feature of WebLogic.

Unfortunately the log levels, which are set after a clean install of WebLogic or some of the Fusion Middleware product creates a lot of noise and therefore it costs I/O performance.

Additional after analyzing an issue with logging often resetting the log level is forgotten.

Here you get a script to reset the log levels at regular intervals or after a trace session.

#!/usr/bin/python
execfile('get_environment.py')
 (more...)

Mastering Oracle ADF Bindings: Advanced Techniques

My Oracle OpenWorld presentation “Mastering Oracle ADF Bindings: Advanced Techniques” is now available for download from the OpenWorld web site. In this presentation, I talk about

  • Reading the Bindings tab
  • Bindings in the ADF lifecycle
  • Working programmatically with bindings
  • Getting the binding from a component
  • Working with dynamic bindings
  • Creating a binding programmatically

If you are interested in creating bindings programmatically, you should read Eugene Fedorenko’s blog post on this. He also makes (more...)

UKOUG Tech 14 in Liverpool

I’ll be going to the UKOUG Tech 14 conference in Liverpool in December to give one of my favorite presentations: “APEX or ADF? From Requirements to Tool Choice”. I’m also leading the Development Tools roundtable, which is always lively at the UKOUG conference. If you want to discuss your options as a developer in the Oracle world, UKOUG Tech 14 is the place to be.

APEX or ADF? From Requirements to Tool Choice
APEX or (more...)

Using Bean Validation in Oracle ADF

Oracle ADF version 12c runs on JEE6 container Weblogic 12c.  ADF Faces 12c (current version 12.1.2) is based on Java Server Faces 2.1 standard. Version 2 of JSF introduced support for Bean Validation , as described in  JSF specification ( Chapter 2.5.7). To summarize: it basically states,  that java bean properties , annotated with Bean Validation constraints, are going to be validated

ADF Book Bundle – get one free!

Packt Publishing has a “buy one, get two” offer that runs until Wednesday. If you don’t have my ADF books, this would be a great opportunity to buy my new book Oracle ADF Enterprise Application Development – Made Simple: Second Edition and get a free copy of Developing Web Applications with Oracle ADF Essentials (or the other way around ;-)

The Long Tail of Application Usage

A long tail is a distribution of some data point where a few data point have a high value, but most of the data points have a much lower value. When sorting the data points by value, there will be a large “head” and a long “tail”.

Application usage displays the “long tail” characteristic: A few screens are used much more than others.

Long tail of app usage

If you are re-developing your application, for example moving from Oracle Forms (more...)

New publication for Oracle professionals

OTech Magazine Winter 2014If you are working with Oracle software as a developer, DBA or application server administrator, you should read the new OTech Magazine.

The Winter 2014 issue is almost a book: 136 pages of high-quality technology articles by some of the leading experts in their respective fields.  My contribution is the article “From Requirements to Tool Choice” about how to choose the right Oracle development tools (ADF, APEX, or Forms).

And did I mention it (more...)