Avoid second request for list in dataTable

Hi, I'm using a dataTable to display a productlist. The name of each product can be clicked to show product details, e.g.
<h:dataTable value="#{productList.list}" var="var">
<h:column>
<f:facet name="header">
<h:outputText value="Product" />
</f:facet>
<h:commandLink action="#{productList.showProduct}" immediate="true" >
<h:outputText value="#{var.name}" />
<f:param name="id" value="#{var.id}" />
</h:commandLink>
</h:column>
</h:dataTable>
When the page is loaded for the first time productList.getList() is called. But when a user clicks on a commandlink productList.getList() is called again, even before productList.showProduct() !
This means that, since the action is immediate, either the Restore View or the Apply Request Values phase somehow needs productList.list (but I don't see why...).
Since productList.getList() can be rather time consuming I would like to avoid this second call. Does anybody know how ?
ps. And I DON'T want to use a session scope bean to keep a copy of the product list !

I have a very similar piece of functionality in my application. I have a dynamic list of issues to display based on results that are retrieved from a database - so the number of items in my array is dynamic. I am able to write out the links in the datatable, but when I click on them nothing happens.
Here's my jsp:
<h:dataTable id="issuesList" value="#{topicList.issueList}" var="issue" >
<h:column>
          <h:commandLink id="issue" value="#{issue.issueDesc}" actionListener="#{billList.findBillsByIssue}" action="#{billList.displayBills}">
               <f:param value="#{issue.ID}" id="issueID" name="issueID"/>
          </h:commandLink>
          </h:column>
     </h:dataTable>
My topicList.getIssueList() is never being called after I submit the request. I don't think that my array is initialized correctly. Can you tell me how you are initializing your product list? Is it dynamic?
Thanks!

Similar Messages

  • How to handle second request for addition to same AD group at code level?

    I am using custom java code for adding group memberships to users based on multiple multi-valued attributes.
    Example: Location Code is a comma separated multi-valued field in OIM User Form and I need to kick off my code each time the attribute is updated.
    If only 1 value in the LocationCode changes, I want to only add users to the group for this value not the older values that have not changed.
    How do I handle this scenario where the code adds the user to the same group twice in OIM. In AD the user is only added once. Do I need to write additional code to read all existing groups of the user, compare them with the new requests and then add new groups?

    Not a big deal.
    Create a trigger in Xellerate users process defn. There u'l get option for old and new value. take both values and compare both values using stringtokenizer and update the child form or group membership.

  • Second request for help

    Since I loaded v 5: 1) The system hangs if I open multiple internet tabs. 2) The system intermittently hangs when I try to write a message. 3) It takes forever to close when it hangs - sometimes requiring a hard shut down. 4) Often, when I close Mozilla and attempt to reopen, it tells me it is already open. If I open the task window, there is nothing there but sometimes that does the trick and I can reopen - sometimes not. 5) Sometimes when I open Firefox, it automatically opens the last tabs. 6) My entire system has slowed. I am operating on XP. I use Norton 360 as a firewall and anti-virus so I think I am clean. HELP

    Since I loaded v 5: 1) The system hangs if I open multiple internet tabs. 2) The system intermittently hangs when I try to write a message. 3) It takes forever to close when it hangs - sometimes requiring a hard shut down. 4) Often, when I close Mozilla and attempt to reopen, it tells me it is already open. If I open the task window, there is nothing there but sometimes that does the trick and I can reopen - sometimes not. 5) Sometimes when I open Firefox, it automatically opens the last tabs. 6) My entire system has slowed. I am operating on XP. I use Norton 360 as a firewall and anti-virus so I think I am clean. HELP

  • Request for - Folders for Play Lists      (GUI improvement)

    This is a serious request for Apple to make one simple improvement on it's iTunes user interface:
    Please give us the ability to make folders of play lists.
    Readers: Please reply to this post to let our friends at Apple know if you think this would be a valuable feature.
    iTunes has a beautiful interface. The one thing that is missing is that it is impossible to organize play lists. If Apple would allow us to create folders in the "Play Lists" side bar iTunes user interface would be perfect!
    iPods and CDs already open like folders. I am asking for the ability to create our own folders that would open and close in the same way. These folders could store play lists in them like web browsers allow users to organize favorites.
    Audiophiles like my self often put together large numbers of play lists. iTunes is great for organizing songs but if a user has a lot of play lists, they just line up in a huge row on the left side bar. This list can become painfully long and difficult to search through just like albums worth of songs dumped into the same list.
    To the people at Apple, please consider this improvement to iTunes to help it continue to be the premiere music program for organizing our "digital life style."

    Hi,
    iTunes already has folders - just go to the top menu, and from 'File' choose 'New Folder' a folder will appear in your playlist window - you can now drag any playlists to it.
    Regards

  • How To avoid column heading for only total line in ALV list Display

    Hi,
    How To avoid column heading for only total line in ALV list Display.

    Hi,
    to change colunm header field catlog is built
    look at the example below
    Changing column text headers
    use this to change, hide, or alter the ALV columns
    CLEAR: gt_fcat.
    READ TABLE gt_fcat WITH KEY fieldname = 'TEXT1' " ***
    *TEXT1 is your field name
       ASSIGNING <gtfcat>.
    IF sy-subrc = 0.
       <gtfcat>-coltext   = 'Date Type'.
       <gtfcat>-no_out    = ' '.
       <gtfcat>-tooltip   = 'Date Type Text from IT0019'.
       <gtfcat>-seltext   = 'IT0019'.
    keep seltext to '' if u want to hide
    ENDIF.
    regards
    austin

  • SCSM - Service Request Area list - modifications not showing for all users

    Hi All
    As you cant edit the Service Request Area list, i've settled on changing the default display names to better reflect the categories we want for our SR's. The changes i've made are visible in SCSM on my computer (where i made the changes from), however if
    i fire up another instance on a different computer - i can only see the defaults. Anyone seen that before? Typically when i make any sort of change to a list item it is visible for all users.
    I'm aware that there is a custom MP out there to allow you to have your own SR Area List, however i was not able to get it to work in our environment (link: http://gallery.technet.microsoft.com/Custom-Service-Request-e4d40738/view/Discussions#content)
    Any help would be appreciated.
    Thanks

    Have you made sure that the selected language in both consoles (the one you are editing from and the one you are testing in) are the same?
    When editing lists you will only be asked to save changes (be that changing existing values or adding new ones) if they are stored in a sealed MP - which they should be according to best practice.
    If you are not asked which MP to save to then you have already "commited yourself" to a specific MP. You could delete this MP (if there is nothing but the list values in it) or delete them one by one using the console. Then when back to square one the console
    will once more ask you which MP to save changes to.
    http://codebeaver.blogspot.dk/

  • I need help with a second hand iphone i purchased recently,i am having issues setting it up as it has is requesting for the icloud account that was used by the previous user

    i need help with a second hand iphone i purchased recently,i am having issues setting it up as it has is requesting for the icloud account that was used by the previous user

    Sorry.
    The iPhone is of no use until/unless the previous owner removes it from their account.
    You will need to find the prior owner or return the iPhone.

  • Second User ID listed for My Email Account

    I had forgotten my Skype ID so i went through the procedure of getting my user ID on the website.  when i got the email and followed the link i was surprised to see two User IDs listed.  one was familiar and the other i never saw before.  when i looked through my account info i could not find anywhere where the second account was listed.  how can there be a second user id for my email address and where can i go to delete the invalid user ID.  

    You need to configure Mail preferences correctly.

  • Access Request list "Request For" Workflow

    We are looking at ways to use the current access request functionality.
    If we use the default view, pendingreq.aspx, for the Access Requests list, there is a column we are especially interested in "Request For".  This column, a hyperlink, tells you the level at which users are requesting access...and if approved,
    the level at which the SCA is about to give permission.
    If we create a new view on the Access Requests list, this "Request For" column isn't available anymore.
    I've tried to pull the list in to look @ all the available fields via:
    1. Report Builder 
    2. http://mySharePointSite.com/_api/lists/getbytitle('Access%20Requests')/items
    ...and can't find this "Request For" field.
    Any ideas?  Separate or linked list elsewhere?

    Hi Eric,
    I can now see the column via:
    http://mySharePointSite/_api/lists/getbytitle('Access%20Requests')/items?$select=ObjectRequestedTitleDisp
    Looks like from Report Builder {download here} if you select "Show Hidden Fields" @ the top of the modal window when building the query, you'll see the
    "Request_for" ...or this ObjectRequestedTitleDisp field.  Only bummer is it's just the name/title...there is no file extension or anything at the end of the string value.  So, if the name isn't "smart" coded/listed, you won't
    know if it's library, folder, document or site level...there is no ".docx" or ".xlsx" @ the end of the "Request_for" string.  At least, I haven't found a way to decipher that yet.
    In SharePoint Designer, I see the following View code which could lead to helping get to the right place, but I'm not familiar with this code just yet:
    <FieldRef Name="ObjectRequestedTitleDisp"/></ViewFields><RowLimit Paged="TRUE">15</RowLimit>
    <JSLink>accessrequestscontrol.js|mquery.js|callout.js|accessrequestsviewtemplate.js</JSLink>
    <XslLink Default="TRUE">main.xsl</XslLink><Toolbar Type="None"/></View></XmlDefinition>
    </WebPartPages:XsltListViewWebPart>
    Creating a view to enable access request delete functionality
    Open the site in SharePoint designer 2013 and click the “All Files” node
    Notice the right side shows the “Access Requests” list
    Right click the “Access Requests” list and select “Properties”
    On the Views panel click New
    Enter a name for the new view such as "showallitems"
    Click “OK”
    Navigate back to the original “Access Requests and Invitations” page
    Current URL is containing page name of “pendingreq.aspx”
    Change the URL to “showallitems.aspx”:
    The view will have no columns
    Click the ellipses and “Modify This View”
    Add at least the 2 columns with edit options
    Make sure if you select multiple columns (good practice so you can see the full scope of the request such as status and person), use the right side “Position from Left” ordering to have your edit item links located on the left side of the request row
    Click “OK” in upper right of page, and now you can see the view which contains the edit links to allow deletion of the item

  • Content Location request for PACKAGE failed (Code 0x80040102) - How to determine list of DP's returned from the MP

    Hi there
    So, existing SCCM 2012 environment, OSD functioning at other sites, been in use for a while.
    New location, new DP.  PXE boot system, choose the task sequence, and I get the error that the package is not found.
    Look at the SMSTS.log and sure enough I see the 0x80040102 error.  
    I have :
    Removed the offending package and redistributed it.  Verified it is present on the server.
    Verified the boundary has the server as a site system.
    Verified the boundaries have the correct IP range, and the correct Site.
    I have tried it with just a Site boundary and just a IP Range boundary.
    Created a copy of my TS, removed the offending package, deployed.  Same error, just with a different package ID (which tells me that it isn't the package, it is something on the server DP itself).
    Rebooted both the Site server and the DP.
    I'm kind of at a loss, as I would expect to see the DP show up in the below log as a DP, but I don't see it.  It looks like it gets policy, and it shows under the content location request Local: 1 (which I believe says it sees 1 local content location),
    but further below in the log it says Processing 0 Locations.
    Very confused.
    Thanks for any help...
    Content location request: TSPxe
    8/26/2014 10:48:46 AM 1584 (0x0630)
      Package : packageid.3 TSPxe
    8/26/2014 10:48:46 AM 1584 (0x0630)
      Client  : c713c862-e9be-4f67-a6d3-f164e05c29a2
    TSPxe 8/26/2014 10:48:46 AM
    1584 (0x0630)
      Local   : 1 TSPxe
    8/26/2014 10:48:46 AM 1584 (0x0630)
      Remote  : 0 TSPxe
    8/26/2014 10:48:46 AM 1584 (0x0630)
      Internet: 0 TSPxe
    8/26/2014 10:48:46 AM 1584 (0x0630)
    Sending RequestContentLocations for packageid
    TSPxe 8/26/2014 10:48:46 AM
    1584 (0x0630)
    Setting message signatures. TSPxe
    8/26/2014 10:48:46 AM 1584 (0x0630)
    Setting the authenticator. TSPxe
    8/26/2014 10:48:46 AM 1584 (0x0630)
    CLibSMSMessageWinHttpTransport::Send: URL: siteserver.domain.local:80  CCM_POST /ccm_system/request
    TSPxe 8/26/2014 10:48:46 AM
    1584 (0x0630)
    Request was succesful. TSPxe
    8/26/2014 10:48:47 AM 1584 (0x0630)
    ::DecompressBuffer(65536) TSPxe
    8/26/2014 10:48:47 AM 1584 (0x0630)
    Decompression (zlib) succeeded: original size 99, uncompressed size 178.
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    Location Reply: <ContentLocationReply SchemaVersion="1.00"><ContentInfo/><Sites/></ContentLocationReply>
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    Processing 0 locations. TSPxe
    8/26/2014 10:48:47 AM 1584 (0x0630)
    LocationsList.size() > 0, HRESULT=80040102 (e:\qfe\nts\sms\framework\tscore\resolvesource.cpp,2142)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    FALSE, HRESULT=80040102 (e:\qfe\nts\sms\framework\tscore\tspolicy.cpp,1863)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    Content location request for packageid:3 failed. (Code 0x80040102)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    hr, HRESULT=80040102 (e:\qfe\nts\sms\framework\tscore\tspolicy.cpp,2626)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    Failed to resolve PackageID= TSPxe
    8/26/2014 10:48:47 AM 1584 (0x0630)
    (*iTSReference)->Resolve( pTSPolicyManager, dwResolveFlags ), HRESULT=80040102 (e:\qfe\nts\sms\framework\tscore\tspolicy.cpp,3412)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    m_pSelectedTaskSequence->Resolve( m_pPolicyManager, TS::Policy::TaskSequence::ResolvePolicy | TS::Policy::TaskSequence::ResolveSource, fpCallbackProc, pv, hCancelEvent), HRESULT=80040102 (e:\nts_sccm_release\sms\client\tasksequence\tsmbootstrap\tsmediawizardcontrol.cpp,1523)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    Failed to resolve selected task sequence dependencies. Code(0x80040102)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    hrReturn, HRESULT=80040102 (e:\nts_sccm_release\sms\client\tasksequence\tsmbootstrap\tsmediaresolveprogresspage.cpp,445)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    ThreadToResolveAndExecuteTaskSequence failed. Code(0x80040102)
    TSPxe 8/26/2014 10:48:47 AM
    1584 (0x0630)
    ThreadToResolveAndExecuteTaskSequence returned code 0x80040102
    TSPxe 8/26/2014 10:48:47 AM
    892 (0x037C)
    Setting wizard error: This task sequence cannot be run because the program files for packageid cannot be located on a distribution point. For more information, contact your system administrator or helpdesk operator.
    TSPxe 8/26/2014 10:48:47 AM
    892 (0x037C)

    It was not just driver packages, it was whatever package was next in line in the Task Sequence.
    The issue got even more strange...I added a DP from my central location to the boundary group of the site that was failing.
    Now it pulls from the local DP.
    If I remove the DP from my central location (that is not local to the failing site), then it stops working again.

  • Checking AppleID, my addresses are correct, but on second step for security, Apple advises it will send text for assistance and lists an account I do not know.  How do I change this?

    Checking AppleID, my addresses are correct, but then on second step for security, apple sent text to unknown address.  How do I change this?

    Does this apply?
    If you're asked for the password to your previous Apple ID when signing out of iCloud - Apple Support

  • How to create second transport request for same programe

    Hello ,
    I created workbench transport request. The changes are done and still in development system.
    Now I have to do another change on the same program that has to be in different transport request,
    but whenever I  change something, and activate it, the changes are saved in first transport. How I can
    create another transport request for the same program without releasing the first one.
    Thanks

    Ask your basis team to provide you with a "Transport of Copies" request.
    Once you get it, add your object in this request and transport. your object will be transported and the original request will not be released. Do note that the changes will still be saved in the original request but you can still transport your object without releasing the original request.
    Edited by: Priyank Jain on Aug 12, 2010 4:12 AM

  • Request for PPR going twice instead of once

    Hello,
    I have a requirement wherein i am showing a list of "dimensions" in a page within <selectOneChoice>.
    <af:selectOneChoice value="#{bindings.dimensions.inputValue}"
    label="#{bindings.dimensions.label}"
    required="#{bindings.dimensions.hints.mandatory}"
    shortDesc="#{bindings.dimensions.hints.tooltip}"
    binding="#{backingBeanScope.backing_MS1.soc1}"
    id="soc1" autoSubmit="true">
    <f:selectItems value="#{bindings.dimensions.items}"
    binding="#{backingBeanScope.backing_MS1.si1}"
    id="si1"/>
    </af:selectOneChoice>
    Now, i display a tree of members for the dimension using the following:
    <af:tree value="#{bindings.MemberBean.treeModel}" var="node"
    selectionListener="#{bindings.MemberBean.treeModel.makeCurrent}"
    rowSelection="single"
    binding="#{backingBeanScope.backing_MS1.t1}" id="t1"
    partialTriggers="::soc1"
    rowDisclosureListener="#{backingBeanScope.backing_MS.nodeExpanded}">
    <f:facet name="nodeStamp">
    <af:outputText value="#{node}"
    binding="#{backingBeanScope.backing_MS1.ot2}"
    id="ot2"/>
    </f:facet>
    </af:tree>
    The tree is filled using a method in the datacontrol which takes two parameters. The page definition has the following entry:
    <methodAction id="getMembers" RequiresUpdateModel="true"
    Action="invokeMethod" MethodName="getMembers"
    IsViewObjectMethod="false" DataControl="MemberSelectorBean"
    InstanceName="MemberSelectorBean.dataProvider"
    ReturnName="MemberSelectorBean.methodResults.getMembers_MemberSelectorBean_dataProvider_getMembers_result">
    <NamedData NDName="dimensionId"
    NDValue="#{bindings.dimensions.inputValue}"
    NDType="java.lang.String"/>
    <NamedData NDName="clickedMember" NDType="java.lang.String"/>
    </methodAction>
    The first parameter is the dimension value i select in the dimensions dropdown while the second is one of the nodes in the tree.
    The first time the tree loads based upon a value of the dimensions dropdown, this method is called with the first parameter as the dimension value and the second parameter as "null", which passes in correct values.
    For expansion of node in the tree, i have a method "nodeExpanded" in the backing bean, wherein i am getting the dimension value and the clicked node data and passing to a method in my bean.
    The problem i am facing is, when i click a node in the tree to expand it, there are two requests being fired within the bean itself.
    The first request passes the parameters of the dimension value and the clicked node data, while the second passes in the dimension value and "null" instead of the clicked node data. This is causing the expanded node to show no children (even though the first request returns data/children. This i verified using S.o.p statements).
    I have two questions here.
    1. Why is there a second request being fired ?
    2. Why is being fired with the second parameter empty ? (is this related to my not binding the second param when creating the tree using the method, as evident from the NDValue in the method binding).
    Thanks,
    Pawan.

    Hi,
    I assume q1 and q2 are related and have to do with the JSf lifecycle. You may want to print out JSF lifecycle phases to see in which order the calls are performed. For the time being, you can add a "null" value check to avoid your logic to execute twice. Note that the tree if content delivery is not set to immediate uses deferred PPR query fetching, which means that a sequence of queries are sent to fecth all data
    Frank

  • Request for quotation.

    Hi Experts ,
    Have  to send request for quotation
    With best regards,
    AVI DDS.

    Hi Avi,
    Let's complite this question first and post a new question for your second question.
    This second question Question is related to SD,
    You can check VA25 for quotation list means history.
    Utkarsh
    Edited by: Utkarshi1 on May 7, 2009 10:44 AM

  • Request for feature. Backlight stays on as long as thumb is on clickwheel

    Just a small request from me, please reply if you feel this is a feature that you would like.
    The ipod classic has the ability to detect whether you're thumb is currently on or off the clickwheel. (ie. placing your thumb on the clickwheel causes the backlight to turn on)
    I request that the backlight stay on as long as the thumb is detected as being on the clickwheel.
    I hate it when I'm browsing through my music and the backlight switches off because I haven't scrolled through a list in a while.
    It should be a pretty quick fix for the next firmware.
    Thanks for listening
    -Cuppo

    Like I said, it's a very small feature request that has an easy workaround, but also a very easy code fix.
    But to me, this seems like the most intuitive backlighting scheme.
    -Turn on backlight when thumb is on.
    -Turn off backlight when thumb is off for 2 seconds.
    (The 2 seconds accounts for the user lifting up the thumb to reposition it on the clickwheel)

Maybe you are looking for