Domain Portal

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Tuesday, 20 November 2007

Oracle JDeveloper/ADF Real Life Story on Oracle OpenWorld

Posted on 12:42 by Unknown
Yes, that right - I was presenting Oracle JDeveloper/ADF Real Life Story on Oracle OpenWorld in Unconference section. Everyone was free to come and listen hints I have delivered for Oracle JDeveloper/ADF development based on real life experience. Based on feedback received from auditory, I think session was successful.

I have started session with presentation based on this outline:
  • About Oracle ACE Directors
  • J2EE Development - JDeveloper 11g and Oracle ADF (future book)
  • Oracle JDeveloper/ADF in IBM GBS Norway
  • Real Development with JDeveloper/ADF
  • Demo of Sample Applications from http://andrejusb.blogpost.com
  • Technical Resources
Yes, I'm writing now book about JDeveloper 11g and ADF. This book will based mostly on practical material. I have presented with several slides my current project in IBM GBS Norway and turned to main part of session - Real Development. In this part I was developing Web application with JDeveloper and ADF just on the fly, at the from of auditory. Application development from beginning to testing took for me 45 minutes. And lastly I presented my blog and have talked about technical resources each JDeveloper/ADF developer should know and use in his daily work.

In this post I want to concentrate on application I have developed during real time development. Developed application - OOWUnconference.zip is based on standard HR schema available in Oracle XE database, application contains 3 Web pages - for viewing and editing data from JOBS table, and also for viewing data from EMPLOYEES table.

I have developed this application based on those steps:

1. I created Business Components diagram. I was using declarative approach to create Model layer. Jobs and Employees entities were added to the Model declaration:


2. Second step was to show how test created Model layer with ADF BC Test utility that comes with JDeveloper:


3. Next step was to show how to add validation logic. Jobs entity object was chosen, I added and tested validation rule for MinSalary attribute:


4. When Model layer was done, I moved to ViewController and have created there page structure along with navigation:


5. First page I developed was - jobs.jspx. This page contains one read-only table and two buttons according to logic defined in faces-config.xml file.


6. Second page was editJob.jspx. This page provides a form for data from Jobs entity editing:


7. Third page - employees.jspx. Here employees who belong to specified job are listed in the table:


8. And of course I have tested validation logic in editJob.jspx page, it worked good:

However, there was a question from auditory about how to make Back button work in a case when validation error is displayed. Hint - you should set Immediate=true for Back button:


9. Ok, everything works fine, but one thing is not ok. If you have noticed, it is possible to update minimal salary with some value, even higher comparing to salaries of existing employees. That not good, and I have implemented solution for this as well. At first, I have created new read-only View object that select all employees with selected JOB_ID and SALARY lower comparing to provided value:


10. When View object was created, I implemented custom method in Application Module. This method is used to execute read-only View object and to return result to ViewController:


11. In ViewController I have created methodAction declaration for checkEmployeeSalary method and in editJob page backing bean implemented a call to defined methodAction:


12. Now second validation rule is also implemented:


Oracle OpenWorld was great event, with two Larry Ellison keynotes and a lot of technical material in Oracle Develop. I even don't talk about entertainment part, it was amazing. See you next year in San Francisco ;-).

When running sample application, don't forget to add adf-faces-impl.jar and jsf-impl.jar to application's WEB-INF\lib directory.
Email ThisBlogThis!Share to XShare to Facebook
Posted in ADF, Oracle OpenWorld | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Groovy - Multiple LOV's per Attribute in JDeveloper 11g
    I was blogging previously about multiple LOV's per attribute functionality. I was using RowImpl class for View object in order to calcu...
  • External Transaction Service in Oracle TopLink
    I have developed sample application, in order to demonstrate how to use External Transaction Service (ETS), when Oracle TopLink is used in M...
  • Workaround for Null Value Bug in ADF List Of Values 11g
    Those of you, who are using List Of Values (LOV) component in ADF 11g, most probably already have noticed bug related to Null value. Simple ...
  • Trip to US
    I'm in US this week, Connecticut. Here is the same weather as in Lithuania, it's winter with about -5 degrees in Celsius.
  • Oracle ADF - between 4GL and J2EE is only one step
    According to ADF architecture described in Oracle JDeveloper 10g (10.1.3) Developer's Guide Section 1.1.1 - Framework Architecture and S...
  • Creating new row using CreateInsert operation
    Sample application - CreateInsert.zip , demonstrates how to create editable table with 'create new row' functionality in ADF BC. We ...
  • Show Buttons based on Disclosed Tab
    In 11g it becomes quite common use case to structure application page with tabbed panels. If you develop your pages based on templates, most...
  • Multilanguage in fixed af:selectOneChoice ADF Faces component
    If someone will face a problem how to enable multilanguage support in fixed af:selectOneChoice component, or simply how to bind fixed af:sel...
  • JDeveloper 11g on Mac OS X Leopard
    I'm using Apple Mac Book Pro for about half of a year, but shame for me all this time I was running Windows OS using Apple Boot Camp so...
  • Why I'm here?
    Oracle for me is more then technology, it is a way how I think. So, I'm creating this blog in order to express my knowledge in Oracle Fu...

Categories

  • ADF
  • Apex
  • Apple
  • BPEL
  • Events
  • Forms
  • Groovy
  • JDeveloper 11g
  • Nomination
  • ODTUG Kaleidoscope
  • OFUG
  • Oracle Magazine
  • Oracle OpenWorld
  • Security
  • SOA
  • Spatial
  • TopLink
  • Traveling
  • Uncategorized
  • Vgo Software
  • Web Services
  • WebCenter
  • WebLogic
  • Workarounds

Blog Archive

  • ►  2008 (72)
    • ►  December (2)
    • ►  November (3)
    • ►  October (9)
    • ►  September (4)
    • ►  August (9)
    • ►  July (6)
    • ►  June (10)
    • ►  May (4)
    • ►  April (5)
    • ►  March (7)
    • ►  February (5)
    • ►  January (8)
  • ▼  2007 (65)
    • ►  December (6)
    • ▼  November (7)
      • JDeveloper 11g - Create, Edit and Delete operation...
      • Oracle JDeveloper/ADF Real Life Story on Oracle Op...
      • Blog on iPod Touch
      • Oracle OpenWorld Unconference - Presentation Time
      • San Francisco - Oracle OpenWorld
      • Presentation at Oracle Spatial SIG during Oracle O...
      • Calculated Column in ADF Faces af:table Component
    • ►  October (6)
    • ►  September (4)
    • ►  August (3)
    • ►  July (4)
    • ►  June (6)
    • ►  May (5)
    • ►  April (6)
    • ►  March (4)
    • ►  February (5)
    • ►  January (9)
  • ►  2006 (9)
    • ►  December (9)
Powered by Blogger.

About Me

Unknown
View my complete profile