ADF/UIX - How NOT to loose currentRow? Iterator issue?

Hi All,
I'm having a bit of a problem in keeping maintaining the state of a couple of views across pages; I'm hoping I'm just doing this wrong and someone can point me in the right direction.
Environment: ADF/UIX
1) From the first page the views (used in dropdowns) are manipulated and the current row set appropriately (I traced the app module and rows are indeed pointing where they should)
2) In an event handler <go name="Page2"/> is executed
3) Page2 references the views from the datacontrol used in Page1 (note that identical bindings are used) but the current row is lost. Tracing through the app module confirms that the current row is set to the first row.
Q1) Is there a way to keep iterators from being reset?
if not...
Q2) If not, is there a method on the AppModule on Views that can be overloaded to set the current row BEFORE the page displays?
Thanks in advance!
/SFL

Thanks for the prompt reply Gabrielle!
I did a bit more testing and in fact it's one view which was causing the problem. A new row is created (and commited) for this view through the AppModule like this:
ViewXRowImpl row = vo.createRow();
row.setX( "...");
row.setY( "...");
vo.insertRow(row);
vo.setCurrentRow(row);
try{
   this.getTransaction().commit();
  }catch(Exception e)
    e.printStackTrace();
  }I hadn't realized that the iterator would get reset after a commit. Fetching the key before the commit and doing a findbykey afterwards solved the problem.
I think I'll implement a base view class that uses beforeCommit and afterCommit to set the iterator back to the desired location. I'm a bit surprised that it isn't the default behaviour though...
Thanks again for the help!

Similar Messages

  • ADF UIX: How to define a binding's subtype?

    In an ADF-UIX project, we have deleted a binding which had been automatically created by a drag and drop operation that generated a multirecord master-detail form.
    When we try to recreate the binding using the binding editor (in application navigator, mouse right click and select the ...UIModel.xml file -> Create Binding), we choose to create a binding of type "range" (since the icon is of the same type than the icons for bindings generated automatically for a multirecord detail), however we get a binding of subtype "DCTable" instead of a "DCHGrid". There doesn't seem to be any way to create a "DCHGrid" binding and the UIModel.xml file is not editable.
    The problem is that the DCTable doesn't render properly when the UIX form is run.
    Any suggestions?

    The reason for deleting it was because the Data Binding is not always correclty refreshed after a column is added to the underlying VO. Initially we thought it would be necessary to recreate the binding, but using the drag & drop method would have been costly as the form was complex and a lot had been modified after the initial drag & drop operation.
    The case where the refresh on the binding is not made is when the binding is displaying all the attributes available within the iterator. Surprisingly, if the binding is only using a subset of the attributes of the iterator, then a new attribute on the underlying VO is immediately displayed.

  • File upload, download using ADF UIX and not JSP

    I have examples for the file upload, download using JSP
    But I want to use ADF UIX. Look and feel in this is impressing and I want to use this. Any one have example for this.
    Users will select a file from their desktop
    This will be stored into the database (Any document. Word, Excel)
    When they query the records then the UIX column need to give a hyperlink. Clicking on the link should prompt to download the file to the local system

    Sure, I use the Apache Commons File Upload package, so that is what I will discuss here ( [Commons File Upload|http://commons.apache.org/fileupload/] ).
    The Commons File Upload uses instances of ProgressListener to receive upload progress status. So first create a simple class that implements ProgressListener:
    public class ProgressListenerImpl implements ProgressListener {
        private int percent = 0;
        public int getPercentComplete() {
            return percent;
        public void update(long pBytesRead, long pContentLength, int pItems) {
            if (pContentLength > -1) { //content length is known;
                percent = (new Long((pBytesRead / pContentLength) * 100)).intValue();
    }So in your Servlet that handles file upload you will need to create an instance of this ProgressListenerImpl, register it as a listener and store it in the session:
    ServletFileUpload upload = new ServletFileUpload();
    ProgressListenerImpl listener = new ProgressListenerImpl();
    upload.setProgressListener(listener);
    request.getSession().setAttribute("ProgressListener", listener);
    ...Now create another servlet that will retrieve the ProgressListenerImpl, get the percent complete and write it back (how you actually write it back is up to you, could be text, an XML file, a JSON object, up to you):
    ProgressListenerImpl listener = (ProgressListenerImpl) request.getSession().getAttribute("ProgressListener");
    response.getWriter().println("" + listener.getPercentComplete());
    ...Then your XMLHttpRequest object will call this second servlet and read the string returned as the percent complete.
    HTH

  • ADF-UIX- How to populate multiple input fields from an lov?

    Like in Forms Developer where using an LOV we can populate multiple tex input items on selection of a value from the LOV, is it possible for us to do the same in ADF UIX.
    Iam usiing JDeveloper 10.1.2

    Have a look at this previous post:
    Re: Can return messageLovinput more than one value?

  • ADF UIX: How to use MessageCheckbox to trigger a component to be rendered?

    I have two UIX component:
    messageCheckBox model="${bindings.Servicelocal}"
    and messageStyledText id="mst_TextChange".
    I want messageStyledText to be showed if messageCheckBox was checked.
    I want to know how to set the “rendered” property of the MessageStyleText.
    The following is my uix xml code:
    <rowLayout>
    <contents>
    <cellFormat>
    <contents>
    <messageStyledText id="mst_TextChange" text="${bindings.Servicelocal}" rendered="${bindings.Servicelocal}"/>
    </contents>
    </cellFormat>
    <cellFormat>
    <contents>
    <messageCheckBox model="${bindings.Servicelocal}" >
    <end>
    <formValue model="${ctrl:createCheckBoxState(bindings.Servicelocal)}"/>
    </end>
    <primaryClientAction>
    <firePartialAction event="ShowHide_Text" unvalidated="true" targets="mst_TextChange"/>
    </primaryClientAction>
    </messageCheckBox>
    </contents>
    </cellFormat>
    </contents>
    </rowLayout>

    I think you're on the right track here.
    Assuming that the values for Servicelocal are 'Y' and null, what you could do is use EL to define the rendered component as follows:
    rendered="${!empty bindings.Servicelocal.inputValue}"
    or alternatively:
    rendered="${empty bindings.Servicelocal.inputValue ? false : true}"
    I'm writing this from home so can't check the above but you get the idea.
    Note the use of ".inputValue" to retrieve the actual value of Servicelocal.
    I note your use of the &lt;firePartialAction&gt; tag in the &lt;messageCheckBox&gt;. Please note I recently found a bug (I've raised this with Oracle Support) where the &lt;firePartialAction&gt; causes the running page to ignore any user input for some seconds (5 sec?) when fired from a &lt;messageCheckBox&gt;. Your mileage may vary.
    Hope this helps.
    CM.

  • How not to loose intalled apps on iPhone while synchronizing new ones?

    While trying to synchronize new downloaded apps from iTunes to my iPhone I get a message that I will loose all installed apps if I synchronize the new ones... any suggestions on how to avoid this and add the new apps to my the iPhone?

    I have following problem. When I buy app from app store I cant sync it to my iPhone because my computer is not authorized to use it. When I try to authorized it, iTunes saying that my computer has already authorized. But it wont sync my apps to iPhone. Then I went to app store using my iPhone. App was succesfull installed to my phone. When the phone was plugged in to computer it says again that the computer has not authorized. I cant authorize the computer because it already has authorized.
    Any help how to proceed?

  • ADF UIX: How to narrow the value range of a MessageChoice?

    I have 3 ViewObjects:
    1st one is CustomerVO with an attribute called CustomerNo,
    2nd one is LinkmanVO with attributes LinkmanName and CustomerNo .
    And I do not create viewlink between them(for some reasons).
    3rd one is JobVO with attributes CustomerNo and LinkmanName.
    On UIX page, I have to Components:
    CustomerNo MessageTextInput(of JobVO),
    LinkmanName MessageChoice(of JobVO) from Lov mode of LinkmanView1Iterator.
    When user fills the CustomerNo MessageTextInput, I want the LinkmanName MessageChoice only show the LinkmanName has the same CustomerNo as the MessageTextInput.

    I am looking for the same functionality between two messagechoices. Did you get any responces to this question? Have you had any luck?
    Thanks,
    Mia
    [email protected]

  • How not to loose my songs

    Hello,
    In the past I have had to rebuild my PC's or reload something and in each case when I reload the Itunes software and then plug my Shuffle into the PC it states: The Ipod "Clays Ipod" is synced with another Itunes library. Do you want to erase this Ipod and sync with this Itunes library.
    What can I do in order not to erase the songs on this Ipod? There is almost a gig of files on this shuffle and I was pretty anal about the choices I made. Is there no other way to do this without blowing everything away?

    Unfortunately, a Shuffle (by design) can only be synced to one library at a time. If you change things--it thinks its a different library.
    If I were you, I would print a list of the songs on my shuffle. Because of the 1 gb size limitation--(at MOST) a shuffle can contain 250 songs. So this isn't going to be a multiple-page list. (You'll print three pages of informaton, trust me.)
    I think you can do this after you refuse the sync question that arises because it's a new library. Click on the device after it's plugged into your computer--view the contents (click on the "Contents" tab), then in the upper right corner, choose File>Print and then when this box opens choose Song Listing.
    Now that you have a list of the songs on your Shuffle, you can create a Shuffle Playlist. (Pull all the songs listed on the shuffle playlist from your iTunes library onto this "reference" playlist.)
    Now backup your entire library--playlists and all. To do this copy the iTunes music folder to another location--either separate hard drive, DVD(s) or multiple CDs. Once things are backed-up(and assuming nothing changes) you can simply drag the backup iTunes folder (or individual internal folders) back into iTunes if things get lost in the future. This will allow you to easily reload your shuffle!

  • How not to loose precision when exporting to dxf?

    When a simple line drawing of exactly 1780.00mm wide is exported into a new dxf file and that file is imported back into illustrator CS4 the precision of the imported drawing is not the same. Often about 0.2 mm smaller.Tried other units, did't  work. Snap to grid/point was switched off. I need the exact size again..
    I hope somebody can help?! Many thanks.

    Niffo,
    Of course I understand the importance of accuracy, especially if the design will be transfered to physical fabrication. But what I'm suggeting is that you aren't losing "image size," but rather losing "line weight" or at least its reference. As a result, you may be seeing a different dimension. Consider this oversimplifcation:
    Dimension A = the distance between the lines.
    Dimension B = the distance between the line weights at their outer extents.
    Could it be that the dimensions of your drawing are being measured at different points pre-dxf export and post-dxf import?
    I don't know, but this is the possibility I was presenting in my previous post.

  • How to- Customise ORA errors in ADF UIX ?

    Iam working on JDev 10.1.2. ADF UIX.
    I have managed to capture JBO errors using message bundle and custo mise them but am not able to do the same in case of ORA errors. I need to customise errors like integrity constraint errors from database.
    How am i too to do that?
    Regards,
    Vineet.

    hello
    di you get this issue solved, please help
    we are using 10.1.3

  • How to upload a file to a blob By ADF uix

    I need to add a file to a record as an accessory;
    I now use ADF-Uix?How do it?
    Someone can help me !
    Thanks

    The forum search would be my first try...
    Then google...
    This has been asked at least once a week and got correct answers...
    Timo

  • Binding Editors not present in ADF UIX

    Hi
    I have been having some trouble with accessing both the Boolean Binding Editor and the LOV Editor from the structure window, when in design mode of an ADF UIX page.
    My bindings are present, but when I 'Edit' the binding, the only option available to me is to select the Iterator and the attribute.
    The documentation keeps telling me to select different tabs, but there aren't any!
    Anyone had this problem????
    I'm on;
    Oracle IDE     9.0.5.16.27
    Business Components Version     9.0.5.16.0
    UML Modelers Version     9.0.5.14.78
    Versioning Support     9.0.5.14.78
    WebDAV Support Version     9.0.5.14.78
    Struts Modeler Version     9.0.5.4.22
    Designer Generators Framework     9.0.5.5.71
    ADF UIX     2.2.8
    java.version     1.4.2
    java.home     C:\j2sdk1.4.2_04\jre
    java.vm.name     Java HotSpot(TM) Client VM
    java.vm.vendor     Sun Microsystems Inc.
    java.vm.version     1.4.2-b28
    user.language     en
    user.region     <no value assigned>
    user.name     chris.bell
    user.home     C:\Documents and Settings\chris.bell
    user.dir     C:\Software\Oracle\jdev9052\jdev\bin
    os.name     Windows XP
    os.version     5.1
    os.arch     x86
    http.proxyHost     <no value assigned>
    http.proxyPort     <no value assigned>
    http.nonProxyHosts     <no value assigned>
    ide.patches     
    Thanks in advance
    Chris

    the primaryclient action should pass the rowkey of the current row (${uix.current.rowKeyStr}) as a parameter. This way the server can find the corresponding row on the server in an event handler.
    see
    http://www.oracle.com/technology/products/jdev/tips/jacobi/edittable/tip_adfuixtable_edit.html

  • LOV /ADF UIX pages does not work on the older version od UIX page

    Hi
    I have recently migrated UIX project from the Jdeveoper 9i to Jdev10g version 1.0.1.2, everything work without any issue, however when I try to create a LOV or any component that are ADF-UIX based, but it does not work I don't even get any error, it just does not work based on the ADF-UIX (Expression base component),
    Any help to resolve this issue will be greatly appericated
    Thanks

    I too have problems with LOVs in UIX pages. I have
    some that you have to run twice to get back a value.To solve this problem,
    1) open your UIX page where you create a new row
    2) in the Structure window, click third tab "UI Model"
    3) double-click the control action binding corresponding to Create
    4) select CreateInsert from the list
    The problem is related to the fix we introduced for the "Blank Row Issue" (see http://www.oracle.com/technology/products/jdev/tips/muench/blankrow/index.html).
    If you have access to MetaLink, please refer to Note 299860.1 and Bug 4201020.
    Regards,
    Didier.

  • ADF UIX page displays data which is not in database

    Using JDeveloper 10.1.2, I created an ADF UIX browse page. It worked correctly, showing all 200 rows that were in the database table. I then used JDev SQLWorksheet to delete 190 rows, so 10 rows remain. Now when I test the browse page, it still shows all 200 rows rather than the 10 rows which are in the table. I exited and restarted the application but the problem persists. Help.

    Did you perform commit command from SQLWorksheet?
    If not, perform it!

  • [ADF-UIX] passing selected items to a custom method, how?

    Hi,
    ADF-UIX can be tricky, and im stuck atm building some functionality, I hope
    someone here can point me in a good direction
    I have a multipleSelection table filled with data from a ViewObject. I also
    have 2 MessageChoice components also filled with data from 2 ViewObjects.
    I made a custom method in my AppMod accepting 3 params and dragged that method
    on to a DataAction. And I have a submit button calling the DataAction.
    Now comes the tricky part, how can I pass the selected rows (radiobuttons) and
    the selected items from my MessageChoices to my custom method.
    I know I have to change something in paramNames[0].value but what exactly, specialy
    the multiselect from my table.
    Thanks in advance for any tips :)

    "what's the application module"
    JDev 10.1.3 leverages an Application Development Framework (ADF) that you can learn about here: http://download-east.oracle.com/docs/pdf/B25947_01.pdf
    Specifically, you'll want to look at chapters 2, 4, & 8 in the developer's guide to understand the framework and to understand how to use application modules to call service methods from a JSF page. You can also search this forum as there are other threads discussing this topic, but I'd recommend reviewing the developer guide first.
    This article I also found helpful:
    http://www.oracle.com/technology/products/jdev/tips/muench/mostcommon/index.html
    From my (short) experience, I've learned that you can call methods either using a bean or service methods on the Application Module. Since I am using ADF Business Components (BC), I try to implement any methods that interact with the BC's (view objects, etc.) as service methods on the Application Module (AM). If my method needs to purely implement logic related to the UI or Navigation, then I implement a method on a bean. The other case where I implement a method on a bean is if I need to do some pre-processing (i.e., gather info. about the state of the UI) prior to calling a service method on the AM (an example of this can be found in the dev guide related to the tableSelectMany component) - so there are some cases where the bean method will call a method on the AM - but again, if the method will update the model I try to use a method on the AM to accomplish this. Understanding the ADF framework is the first step (see the dev guide), and then I'd recommend looking at the SRDemo and previous posts on this forum.
    Finally, one thing that is really cool - if you define a service method on your AM, it shows up in the data control pallette - you can drag and drop the method on the .jspx page and all of the bindings/wiring is done automatically for you (including handling passing of parameters.)
    hope this helps.

Maybe you are looking for

  • IOS 8.1 Affects WiFi on iPad Air - can't downgrade

    Hello all, I just got a warranty replacement iPad Air the other day that came with iOS 7.1.2 on it - worked well, but, of course, I was pressured to update to iOS 8.1. After doing so, on a "brand new" iPad (did not restore from backup), I've noticed

  • Custom component: porting from lc 8.0 to lc 8.2

    hello i developed a java pojo custom component for lc 8.0, essentially it connected to a db and returned a complex object. Now the environment has been upgraded to lc 8.2 . I've loaded my processes (which include my custom component) on the new envir

  • Canon Printer mx860 not working since upgrade to Yosemite, it is connected to my Mac via usb.  Any suggestions?  Thanks. LL

    My 2009 Canon MX860 Pixma printer not working since an upgrade to Yosemite on my MAC version 10.10. It is connected by USB.  Have had no previous issues with printing, scanning or faxing.  When trying to print my Calendar I only get light vertical do

  • Return Delivery Excise Invoice

    Hi, When i make a Return Delivery Excise Invoice, system is not picking the excise. I tried it for many times but the result is same. Thanks Pankaj Garg

  • Oracle Help on z/OS 390

    Hello, I have made a simple help application that runs on Windows: ========================================================= TestHelp th = new TestHelp(); // Initialize Oracle Help Help oracleHelp = new Help(true, true, true); final URL hsURLOrl = th