Hot reloading with JDeveloper 11gR2 – ADF Bindings, ADF BC, JSF/ADF Taskflow Navigation Cases

Lucas Jellema 1
0 0
Read Time:2 Minute, 42 Second

My curiosity was piqued by all the tweets from JDeveloper and ADF experts about the hot reloading capabilities of JDeveloper 11gR2. Those capabilities that should allow we to run an application on the Integrated WebLogic Server, make changes in XML files – not just the JSPX page sources but also ADF PageDefinitions with Data Bindings and ADF BC definition files for ViewObjects and Entity Objects as well as Java Classes leveraging the Hot Swap capabilities already available in WebLogic Server 11g.

So I took JDeveloper 11gR2 for a simple spin. I created a very simple Fusion Web Application – a page with a single form based on an Employee ViewObject. I ran the page. It looks like this:

Image

Not all columns in the underlying EMP table – or attributes in the EmployeeView ViewObject – have been bound into this form. Let’s see which changes I can craft and have ‘hot reloaded’.

The Bindings for this page currently look like this

Image

With the application running, I add the Deptno attribute to the form:

Image

The page now looks like this:

Image

and the bindings have been extended with one more attribute binding:

Image

After saving the changes, I rebuild the ViewController project. Note: this step is crucial, and I forgot it when I first tried to this feature. So remember: saving the changes is not going to trigger the hot relad – rebuilding the project is required for that!

When I reload the application in the browser, I was hoping for this hot reload to kick in and pick up the new binding definitions. Instead, the browser came back with:

Image

Which frankly was a little disappointing. I still have not figured out how these changes can be made to hot reload.

I re-ran the application and now, sure enough, the Deptno field had been added:

Then I thought: well, let’s change the WHERE clause on the ViewObject – to exclude all CLERKs:

Image

While I was at it, I decided to also change the UI Hints for Ename:

I saved the definition, rebuilt the Model project (There is that crucial step again) and reloaded the web application in the browser – a new fresh tab. Here is what I got:

All changes – the WHERE clause excluding CLERKs, the label for ENAME and both the tooltip and display width for ENAME – are hot reloaded.

I then created a second page – DeptForm – and a navigation case in the unbounded taskflow:

Image

I also added a button in the EmployeeForm:

Image

This time, after reloading the page and clicking on this button, navigation did take place to the DeptForm page – even though it failed to load the DeptForm page because it did not know the bindings that were just created. However, it had hot reloaded the navigation rule in the adf-config.xml file.

Image

At this point I am a little at a loss with regard to the Page Bindings: is hot reloading of these definitions supported at all?am I doing something wrong? Do I need to set things up in order to have the hot loading of page bindings working ? Am I trying to hot reload the wrong kind of changes? It would seem that adding an attribute binding would seem the kind of thing hot reloading should support on the ADF Data Binding level.

About Post Author

Lucas Jellema

Lucas Jellema, active in IT (and with Oracle) since 1994. Oracle ACE Director and Oracle Developer Champion. Solution architect and developer on diverse areas including SQL, JavaScript, Kubernetes & Docker, Machine Learning, Java, SOA and microservices, events in various shapes and forms and many other things. Author of the Oracle Press book Oracle SOA Suite 12c Handbook. Frequent presenter on user groups and community events and conferences such as JavaOne, Oracle Code, CodeOne, NLJUG JFall and Oracle OpenWorld.
Happy
Happy
0 %
Sad
Sad
0 %
Excited
Excited
0 %
Sleepy
Sleepy
0 %
Angry
Angry
0 %
Surprise
Surprise
0 %

Average Rating

5 Star
0%
4 Star
0%
3 Star
0%
2 Star
0%
1 Star
0%

One thought on “Hot reloading with JDeveloper 11gR2 – ADF Bindings, ADF BC, JSF/ADF Taskflow Navigation Cases

  1. Lucas, this might be a silly question, but did you rebuild your project/application after making the changes to your view object and page definition file?
    This compile step should trigger the hot reload, and you should see a line in your log window that lets you know sources have been reloaded to your running application.

Comments are closed.

Next Post

ADF 11g R2 : ADF Business Components UI Categories and Dynamic Forms (and some new IDE features)

ADF 11gR2 has some very nice UI Hints features. Some were already available in previous releases. In this post I will describe the effect of the UI Categories. On the go, I will also point out some other new features. To see how this works, I created simple ADF Business […]
%d bloggers like this: