From the Desk of Oracle ACE Director

Chris Muir

Subscribe to Chris Muir: eMailAlertsEmail Alerts
Get Chris Muir: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Latest Blogs from Chris Muir
Recently I tweeted the following pic which raised some interest, showing the kWh units of electricity used in my house compared to others in the local suburb Kensington in Perth Australia:Our yearly electricity bill is ~AU$430, down from ~AU$754 in 2013.I was asked what have we done to...
No really, it has! You can find my new Oracle blog here.For the record this older blog will stay to allow readers to continue to benefit from the existing posts.I hope to see you on the new blog!
A New Year has brought a desire for new challenges. As a result early in the year I'll be taking on a new role as a product manager for ADF at Oracle Corporation.The decision to move was certainly a difficult one. I've had an excellent 10+ years at SAGE Computing Services under the l...
One of my talented colleagues discovered an interesting ADF logic bomb which I thought I'd share here. The issue is with the instantiation order of ADF Faces scoped beans in JDev 11g when using Bounded Task Flows embedded as regions in another page. Regular readers would be familiar t...
As software applications grow, a common technique to reduce the complexity is to break the overall solution into separately built and deployed modules. This allows each component to be worked on independently without being overwhelmed with detail, though the cost of reassembling and bu...
There’s a rather obscure JDeveloper bug that only effects IE7, for af:columns in af:tables that show af:outputText fields based on dates that are null (phew, try and say that with a mouth full of wheaties). It occurs in 11.1.1.4.0 and 11.1.2.0.0 (and all versions in between it’s assume...
Within JDev 11g+ experienced ADF programmers will be familiar with PageFlowScope beans used by tasks flows, in particular Bounded Task Flows (BTFs) where they provide the equivalent of session scope for variables for the life of the BTF for a specific user session. Indeed the Oracle do...
With the huge amount of sessions at Oracle Open World, it’s often hard to find the little gems of information amongst all the marketing. This is true of ADF like all other technologies at the conference, there’s simply a lot of information to digest and filter. Luckily Oracle publish...
From time to time in JSF and ADF Faces RC applications there’s the need from one managed bean to retrieve another, typically from a lesser scoped bean to a greater, such as a requestScope bean retrieving a sessionScope bean to access its methods. There’s essentially 3 avenues to solvin...
If you're heading to OOW this year, it'd be great to have you at either one of my following presentations: Session ID: 02240 Session Title: Angels in the Architecture: An Oracle Application Development Framework Architectural Blueprint Venue / Room: Marriott Marquis - Golden Gate B Da...
With the explosion of Internet content, especially that for the IT industry, it leaves an interesting question hanging over the worth (if any) of IT textbooks. When you can find an answer on just about anything online, what’s the point of shelling out money, especially for IT texts th...
There are very few pieces of software where a casual approach can be taken to the process of software development. Software development is intrinsically a difficult process, gathering requirements, design, development and testing all taking large effort. In reaction enterprises have se...
In my post from last week I documented the changing behaviour of task flows and Application Module nesting between the 11.1.2.0.0 and 11.1.1.X.0 series of ADF & JDeveloper. In that post I detected a distinct change in the underlying behaviour of how ADF works with ADF BC Applicati...
In a previous blog post I discussed the concept of automated nesting of Application Modules (AMs) when using Bounded Task Flows (BTFs) with a combination of the transactional options Always Begin New Transaction, Always Use Existing Transaction and Use Existing Transaction if possible....
What's one of the worst things about attending Oracle Open World? From my point of view it's the huge amount of marketing. Booooorrrring. I'm a developer, I want to hear technical stuff, not sales talk!! For ADF developers attending OOW in 2011 this is all set to change. Not only ha...
The previous blog post in this series looked at the default behaviour of the ADF framework in 11.1.1.4.0 of the af:region tag embedded in a af:showDetailItem tag. In this post we'll look at programmatically controlling the activation of regions to stop unnecessary processing. This exa...
ADF's af:showDetailItem tag is used as a child to parent tags such as the af:panelAccordion and af:panelTabbed. JDeveloper's online documentation states the following about the af:showDetailItem tag: The showDetailItem component is used inside of a panelAccordion or panelTabbed compon...
The previous blog posts in this series (part 1 and part 2) looked at the behaviour of the af:region tag embedded in a af:showDetailItem tag with JDeveloper 11.1.1.4.0. This post investigates the changing nature of the "deferred" activation property for the underlying af:region task flo...
(With apologies, apart of the beginning of this post has been chopped off during copy & paste. I'll rectify tonight) Yet as the old saying goes, "with power comes great responsibility", or alternatively, "the devil is in the detail". Developers need to have a good grasp of the task fl...
JDev 11.1.1.5.0In my previous blog post I discussed the power of the ADF task flow functionality, and the devil in the detail for uninitiated developers using the transaction and data control scope options. This post will extend the discussion on task flows and the ADF Controller's in...
I'm happy to announce that three key participants of the ADF EMG will be presenting alongside Oracle staff at the upcoming "OTN Virtual Developer Day - Rich Enterprise Applications" .... a virtual conference on all things "ADF" in early May, open to the general public.Jean-Marc Desvaux...
One of the first things any computing user learns is how to select text with the mouse or keyboard, then copy & paste the selected text. This simple functionality is supported in most applications including browsers, making it a very familiar facility to all users. There are spec...
I don't normally write these sort of blog posts, but Oracle's been keen to let customers know how simple the upgrade of Oracle Forms 10g to 11g is. One of the major sticking points for customers is that this requires a move from Oracle Application Server and OC4J to WebLogic Server, a...
The following blog post is purely for my own purposes, to document how to install Oracle XE 10g on Ubuntu 10.10 Server as a VM under VMWare Fusion 3.1 on Mac OS X 10.6.6.These instructions are gathered from numerous internet resources and much of the credit must be given to these autho...
For all ADF developers, I'd like the chance to point out that this year's ODTUG Kaleidscope '11 conference in Long Beach USA has a substantial amount of ADF presentations. In fact quite a few active members of the ADF EMG will be presenting this year which is great.For anyone who does...
The EXISTS keyword in SQL queries is an efficient mechanism for returning record sets from one dataset when they exist in another dataset. For example we can write queries like:SELECT org.org_id, org.name FROM organisations org WHERE EXISTS(SELECT 1 FROM events evt WHERE evt.org_id = ...
ADF Libraries are a very useful feature of JDeveloper 11g. They allow a master application, via the Resource Palette, to load Bounded Task Flows (BTFs) and the BTF's associated ADF Business Components from separate applications, without having to include the BTF and ADF BC objects in ...
When you start running ADF applications under JDev 11g you'll become familiar with seeing URLs like the following in your browser: http://127.0.0.1:7101/Sage-ViewController-context-root/faces/Welcome.jspx Each part of the URL is significant, though the one that stands out as being od...
I'm happy to announce that the WebCenter EMG has opened its doors for business, run by Yannick Ongena and backed by a number of well known WebCenter personalities. Like it's older EMG siblings, the ADF EMG, OBIEE EMG and SOA-BPM EMG, the WebCenter EMG will be a place to discuss WebCen...
I knew before I picked up Lucas Jellema's Oracle SOA Suite 11g Handbook it would be a struggle to review it. If you've ever read one of Lucas's huge range of technical blogs, you know he's a prolific technical writer, and if you've ever had the privilege of meeting him you know this c...
Simple post for my benefit, documenting the minimal install for Oracle Service Bus 11.1.1.3.0 under Windows, configuring the server in development mode. There's nothing overly exciting for other readers in this post, beyond say an abbreviated form of Oracle's verbose install documenta...
Projects and the Application itself in Oracle's JDeveloper 11g are capable of generating different deployment files at design time, including WAR files, EAR files, JAR files and other standard Java EE archive types. In addition JDev can generate a special JAR type specific to ADF deve...
For those who attended the AUSOUG'10 Perth conference, my presentation JDeveloper 11g's REST web services is now available for download.Thanks to all the members who voted for this session, I was well chuffed when it received 2nd best presentation at the conference.
A blog post documenting something we configured incorrectly using Hudson, maybe useful to others.Via Hudson we build a Java EE application using Ant. The associated Hudson job first checks out the code from SVN. During the SVN check out phase of the job we'd see the following reporte...
We recently had the requirement to log all incoming and outgoing parameters from Bounded Task Flows (BTF) for JDeveloper 11g. Via the kind assistance of Simon Lessard and other OTN Forum helpers (of whom I'm very grateful) we were able to come up with the following solution. I share it...
We recently had the requirement to provide our users global hotkeys to switch between tabs within the ADF UI Shell (a.k.a. Dynamic Tab Shell) in JDev 11g. Luckily I caught a presentation at Open World this year where Frank Nimphius showed off support for creating global hotkeys in ADF...
It's that time of the year again when the Perth Australian Oracle User Group (AUSOUG) conference comes around. This conference is guaranteed to be only 0.005% as large as Oracle Open World, way more personable though, with better lunches, involves less walking & definitely is less tir...
The following documents a somewhat small issue we're having with JDeveloper 11.1.1.2.0. At this time I'm unable to lodge an SR with Oracle Support as we don't understand the circumstances under which it occurs, thus we can't build the usual simple "Hello World" test case that Support ...
Every once in a while on running an application via JDev, usually just before I'm about to present (argh!), the integrated WLS doesn't start, displaying the following error message:*** Using port 7101 ***C:\Users\Chris\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\bi...
A recommended ADF development best practice from Oracle is to check your applications are Activation Safe. In recent testing of an ADF 11g application we discovered the following scenario where our application failed Activation Safe testing, documented for others to read-but-not-exper...