Domain Portal

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

Sunday, 6 May 2007

Create/Edit operations and setCurrentRowWithKeyValue action in Oracle ADF

Posted on 00:23 by Unknown
This post is based on my previous post - Invoking Create method programmatically. I have decided to extend it and to show how Edit form for newly created data should be opened. While Create functionality is reused, in Edit form Master-Detail relationship is implemented. Master part is implemented using ADF Faces form component, in Detail part ADF Faces table component is used. Table is created with dropdown list, according to solution described in Steve Muench screencast Nr. 7, available at JDeveloper/ADF Screencasts. In this post, I will be mainly focused on data transfer between Create and Edit forms.

Ok, let's say we have created custom Create form using a method in Application Module class. At the same time, Edit form functionality is developed based on the same View object as for Create form, but only with one difference - it is developed in declarative way, using JDeveloper wizards. Let's make a test and see what we will get. Create form:


When Creat button is pressed, Edit form is opened, but displayed data isn't correct:


Developed sample application - SetCurrentRowWithKeyValue.zip, handles this action correctly. Sample is based on LOCATIONS table from standard HR schema. Data from DEPARTMENTS table is used in Detail part of Master-Detailed relationship implemented in Edit form.

Value for primary key column is generated by database sequence, so for primary key column is assigned DBSequence type. So, how to open correct data in Edit form after Create operation is performed? Needed steps:
  1. From createLocation method implemented in Application Module class, you should return primary key value for newly created row - newLocation.getLocationId().getSequenceNumber();
  2. In Create form JSPX page Backing bean implemented action method binding, store returned primary key value into managed bean - JSFUtils.setManagedBeanValue("valueHolder.locationId", ((Number)result).stringValue()); Please, notice that oracle.jbo.domain.Number is converted to java.util.String, it is because setCurrentRowWithKeyValue accepts java.util.String type values
  3. In page definition file for Edit form, define setCurrentRowWithKeyValue action, in developed sample it looks similar:


  4. Don't foget to add in the same page definition file invokeAction element for defined setCurrentRowWithKeyValue:


When listed steps are passed, Edit form should be opened correctly. Let's test again, Create form:


When Create button is pressed, Edit form is opened with correct data:


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 | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Multiple LOV's per Attribute in JDeveloper 11g
    During OOW 2008 I have attended Steve Muench talk about new features in ADF Business Components available in 11g release - Oracle ADF: New D...
  • JBO-25058 and JBO-26001 exceptions
    In a case if you will get JBO-25058 and JBO-26001 exceptions after running application developed with Oracle ADF in JDeveloper 11g, most pro...
  • JDeveloper 11g Masterclass in Vilnius
    I'm posting update to my previous post - Oracle Forms to SOA workshop in Vilnius , where I was describing masterclass session I will do ...
  • Opening Report Window in ADF Faces
    Such requirement as opening report window can be assumed as easy one. But, when I have received request for solution, it was not so easy to ...
  • Oracle JDeveloper/ADF Real Life Story on Oracle OpenWorld
    Yes, that right - I was presenting Oracle JDeveloper/ADF Real Life Story on Oracle OpenWorld in Unconference section. Everyone was free to c...
  • JDev/ADF samples list
    This week, Steve Muench on his examples page have added a link to my JDev/ADF samples list . Thanks, I'm very proud of this - it is co...
  • Oracle Always Rocks !
    This song was performed at Oracle OpenWorld 2007, after Larry Ellison and Safra Catz keynote - Sunday Night Live—30 Years Behind The Scenes ...
  • Oracle Fusion Middleware 11g Technology Preview 3 - whats included?
    Probably almost everyone have noticed Christmas gift from Oracle - JDeveloper 11g Technology Preview 3 . What new things are inside this gif...
  • List-Of-Values Component in Search and Edit Form
    Sample application described in this post contains high practical value, it implements real use case. Defined use case - based on value sele...
  • Oracle Magazine Peer-to-Peer column
    My profile is published in Oracle Magazine January/February 2008 edition - Favorite Things . Profiles of Oracle ACE Director - Chris Ostrow...

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)
    • ►  October (6)
    • ►  September (4)
    • ►  August (3)
    • ►  July (4)
    • ►  June (6)
    • ▼  May (5)
      • ExecuteWithParams in your Oracle ADF application
      • Oracle Fusion Middleware Regional Director nomination
      • Spring in Lithuania
      • Templating in Oracle JDeveloper 11g
      • Create/Edit operations and setCurrentRowWithKeyVal...
    • ►  April (6)
    • ►  March (4)
    • ►  February (5)
    • ►  January (9)
  • ►  2006 (9)
    • ►  December (9)
Powered by Blogger.

About Me

Unknown
View my complete profile