Archive for January, 2007
How to refer to an Attribute in the Currently Selected Table row in an ADF Faces page – implementing a Generic Row Reader
Jan 31st
A very small article on a very trivial issue. I have a page with a Master-Detail construction with a (master) Table of Departments and a (detail) Table of Employees. My challenge here: how can I display the name of the currently selected Department in the heading for the Employees table? Using ADF Bindings, this should be dead easy? And indeed: it is.

The steps:
Read the rest of this entry »
XML-Publisher how to display your input parameter
Jan 31st
This week I have played a bit with XML-Publisher. The goal was take some reports and try to migrate them to XML-Publisher version. Yesterday I posted a blog about how you can setup a matrix report using the proper tags and references. I must say I was very content that it was possible and although it took me some time. After I accomplished the matrix layout the next question came up. How can I display the input parameters of the report in my report?
Read the rest of this entry »
Creating an ADF URL Service DataControl for binding a File or Servlet/JSP service and using it in an ADF Faces Web Application
Jan 31st
Looking through the list of new features for JDeveloper 10.1.3.2 yesterday I suddenly noticed a feature that was not new at all, but that had so far escaped my notice: the URL Service Data Control, that allows us to define a ADF Model Data Control for URL Services, such as files (CSV, XML, etc.) that can accessed through a URL and also Servlets and JSPs that return simple, textual data such as XML. In this article, I take this feature for brief spin. My objective: publish in a web page in a table layout the contents of a CSV file that I know lives somewhere on the internet (actually, my own laptop) behind a URL.
This demonstration proves once again how the ADF Model Data Controls allow us to develop a web page on top of Data Controls without any knowledge of the underlying Data Control implementation. Developing the webpage is no different for this URL Service Data Control from what it is like with a Database Data Control.

The result when we run the web application looks like this:

Using the new JSF Components ShowDetailFrame and PanelCustomizable for structuring the User Interface in JDeveloper 10.1.3.2
Jan 31st
One of the interesting new features that come along with WebCenter in JDeveloper 10.1.3.2, but hopefully are not necessarily part of WebCenter (licence) is the set of Customizable Components: PanelCustomizable and ShowDetailFrame. These two components make it very easy to organize the content of our web application, treating different panels as if they are almost stand-alone, portlet like objects that can be minimized, rearranged, have their own dropdown menus etc. Their use in conjunction with portlets is obvious, but they can be used in any JSF (e.g. ADF Faces) application. In this article I will give a very simple example of applying these components to an ADF Faces databound web application.

JDeveloper 10.1.3.2 & WebCenter – first impressions and first tip
Jan 31st
It was hard to miss yesterday as weblogs around the world – just like telex machines in the old days – started ticking and buzzing: JDeveloper 10.1.3.2 is released! And even more exciting: WebCenter is available (well, the design time environment that lives in JDeveloper). From Steve Muench and Didier Laurent to the IT-Eye blog (twice) and now our own: it’s hot!
You can download the new JDeveloper 10.1.3.2 from JDeveloper Downloadpage on OTN. The most eye catching new component with design time support in JDeveloper is Oracle WebCenter Suite. The runtime environment – WebCenter Suite Framework, living in Oracle AS 10gR3, will be available from OTN any day now. Rahul Patel, VP for WebCenter and Portal, stated that internally WebCenter has been released from development to a staging area from where it will be put out on OTN within days.
The new features in JDeveloper 10.1.3.2 are listed here. Of course it contains a range of bug-fixes as well.
Read the rest of this entry »
XML-Publisher building a matrix report
Jan 30th
Last week I experimented with XML-Publisher a bit. The goal was to figure how to built a matrix report with simular layout as an Oracle Reports matrix report. Would it be easier, better I was not sure but curious to find out. As most developers know building an Oracle matrix report can be painfull when you want to make changes in a later stage to the layout. You realy have to know which frame tp select when you want to change the size of the fields. So what do you need to know and do
Read the rest of this entry »
ADF Flex Fields or ADF User Extensibility or “The End User driving the Application” or “ADF goes APEX” or… (sneak preview)
Jan 30th
One picture speaks more than a thousand words (a pity for someone as verbally skilled and graphically challenged as myself). However, for once, I will try to let the pictures speak for themselves. I present: dynamic, run-time User Extensibility in ADF applications:
Our starting point is a straightforward ADF application that I have generated using JHeadstart (however, that is not essential in this story). I will show how I have enabled the end user to add fields to this application, allowing him/her to record additional information about Departments and Employees – and search on them as well.
Read the rest of this entry »
Firebug 1.0 is final
Jan 27th
The best thing after sliced bread has reached a new milestone, version 1.0. Firebug is a great tool for HTML, DOM and especially Javascript. A lot of people from AMIS saw my demonstration on the last academy and most of them were quite surprised by its possibilities. Together with the Firefox web developer toolbar web development became so much easier.
One thing to keep in mind when you’re a 0.4 user:
In Firebug 0.4 there was an "Events" tab, but I can't find it in Firebug 1.0. The "Events" tab has been replaced with the ability to log events to the "Console" tab. Right click on an Element and you will see the "Log Events" menu item. Check that, and then you will see the events on the console.
A while ago a wrote a blog about firebug. At that time the tool was already very usable and had a lot of features. Take a look at that blog and the documentation of Firebug and you know enough to make very advanced pages. When you’re doing more with Javascript than onmouseover and onmouseout you have to download Firebug.
Oh and stop calling me Mr. Dojo
(dirty little) Trick for calling methods with multiple input parameters from JSF EL Expressions
Jan 27th
I am not sure yet whether I have been really clever or am suffering from a twisted mind. In this article I present a grantedly farfetched approach for invoking methods from EL expressions in JSF (and JSP) applications – nothing spectacular so far – including calling methods that take one or even multiple input parameters.
Calling a method for retrieving its return value – other than normal bean getters – is not supported in JSF EL Expressions, outside of specific method-bound properties such as action. A trick for calling a method that does take at most one input parameters from an EL expression is using an object that implements the Map interface. Through a notation such as #{bean[object]}, we can invoke the get method on the Map implementing bean and pass as key parameter the object. The get method can use the key to decide which method to invoke or as the input parameter for the one method it knows to invoke. See: How to call methods from EL expressions- pre JSP 2.0 trick for JSPs with JSTL (June 2005) for a description of that ‘trick’.
I have extended that trick to allow for passing of multiple parameters.
Read the rest of this entry »
How to build an Oracle Forms application on BPEL/WF
Jan 19th
Why Oracle Forms and BPEL?
Old style Forms applications normally don’t hold much workflow functionality. Sure there is an order in which the forms should be used. The workflow of the application is in the mind and knowledge of the user. For my current project I am investigating, together with my colleague Peter Ebell, ways how we can use Oracle’s BPEL Workflow engine to enable workflow functionality in existing forms applications.
The idea is to implement a Java class that interacts between Oracle Forms and the BPEL Workflow enginge. This class we be embedded in a new workflow Form. This form will be used to startup the existing forms of the application. Goal is to make the existing application a workflow enabled application without modifying it. The workflow functionality should be an add-on and not a modification of existing applications.
I will describe the BPEL process and Java/Forms class in a future post. This post will describe how we embedded the Java class in the workflow form.
Read the rest of this entry »


