Sunday, October 14, 2012

PanelGridLayout (JDev ) to Simplify Oracle Forms Modernization to ADF

I'm usually bored to death to work with UI layout or CSS. But not today, when we have new af:panelGridLayout ADF Faces component available with JDev (it was already available with Read more about it from Duncan Mills blog - PanelGridLayout - A Layout Revolution. This will change how we build layout in ADF, but also it will change how we build form blocks layout. I believe it will substitute af:panelFormLayout component, in more complex use cases. This is especially true for Oracle Forms modernization - usually Forms screens are pretty complex and stuffed with af:inputText boxes. Up till now it was hard to adapt af:panelFormLayout to create proper grid UI - this will change with af:panelGridLayout component.

Here is simplified example of such layout, typical to Oracle Forms systems (download sample application - This layout is stretchable:

Input text boxes are rendered using grid structure and spread across different areas of the page. We could achieve similar layout structure with af:panelFormLayout, but this would mean to add lots of af:spacer components into empty areas - not a real grid.

One more reason to move to JDev - Panel Grid Layout available directly from Component Palette:

When you drag and drop it to the page - JDev offers configuration wizard, this is very helpful - is much easier to understand different layout properties and apply them correctly:

Here you can see how it looks from the source structure - rows and cells:


Anonymous said...

Anyway I could upgrade JDev to JDev and get the Webcenter /SOA / BPM extension ? or bring the components added in 11gR2 like PanelGridLayout to 1.5 ?

Thanks In Advance !

Andrej Baranovskij said...

Nope - you can't do this.


Anonymous said...

Hello, a tried to use panelGridLayout for a layout template, but gridCell inject left-margin of 5px... I tried unsuccessfully to remove this attribute.. :( it`s a bug?


Mick said...

You can upgrade to Jdev if you want to use this layout with SOA/BPM