Undo changes in table row in Oracle ADF 10g

Hi all,
I use a commandButton to undo changes in editable rows of a table. This is the code I use in the action() method of my button:
DCIteratorBinding iter = (DCIteratorBinding)getBindings().get("queryVariablesFindAllIter");
Row currRow = iter.getCurrentRow();
if (currRow != null)
currRow.refresh(Row.REFRESH_UNDO_CHANGES);
AdfFacesContext.getCurrentInstance().addPartialTarget(this.getMasterDetail1());
However the code fails at the refresh() method with the following error:
javax.faces.el.EvaluationException: java.lang.UnsupportedOperationException: refresh()
How can I overcome this error? Is there any other way to refresh the row?

I use session EJBs. I'll see if i can do something similar, otherwise i'll re-execute the iterator

Similar Messages

  • CSS issue when changing the table row height to 16px

    Hello,
    After changing the table row height through css like this:
    .table-row-cell, .table-cell {
    -fx-cell-size: 16;
    the table rows are correctly displayed with a 16px height but the cell bottoms seem to be incorrectly set.
    For example the following css style (a red 3px bottom border):
    .table-cell {
    -fx-border-width: 0 0 3 0;
    -fx-border-color: red;
    doesn't work anymore with the new row height whereas it works with the 24px standard row height.
    While investigating with Scenic View, I noticed that changing the row height changes the TableRow layoutBounds height (from 24px to 16px so that's ok) but not the boundsInParent height which remains to 27px. I think it should become 19px (16 + 1.5 + 1.5). I don't know if it's a bug.
    Anyway, any help making the css red border working for a 16px row height would be greatly appreciated.
    Regards,
    Bruno.

    Q: Would this help to just use absolute div tags and give me 'ABSOLUTELY ABSOLUTE' positioning?
    No.  APDivs are not a good primary layout method.  Use default CSS positioning (which is no positioning at all).  Align page elements with margins, floats and padding.
    See example -- 2-Column CSS Layout with Grids
    (View Page Source in your browser to see the code)
    http://alt-web.com/TEMPLATES/2-col-fixed-with-grid.shtml
    Nancy O.
    Alt-Web Design & Publishing
    Web | Graphics | Print | Media  Specialists
    www.alt-web.com/
    www.twitter.com/altweb
    www.alt-web.blogspot.com

  • What are the differences between oracle adf 10g and adf 11g

    Could you please let me know what are the diff b/w oracle adf 10g and 11g, i tried in many user guides but i could not find it.
    Thanks in advance,
    Poli Reddy P

    893771 wrote:
    Hi all,
    I would like to know what the differences between Oracle and other NoSQL database are.
    When and why should we use Oracle?I suggest that you start here:
    http://www.oracle.com/technetwork/database/nosqldb/overview/index.html
    Is Oracle NoSQL database link with Big Data Appliance?Yes, Oracle NoSQL Database will be a component of the Big Data Appliance.
    Can we use map-reduce on a single personal computer? How should we install Oracle NoSQL database to use map reduce on a single personal computer?Yes, I believe you can run M/R on a single computer. Consult the various pieces of documentation available on the web. You may run Oracle NoSQL Database on the same computer that you are running M/R on, but it is likely that they will compete for CPU and IO resources and therefore performance may suffer.
    Do we also have eventual consistency with Oracle NoSQL database? Yes.
    Can we lose data if master node fails?If you run Oracle NoSQL Database with the default (recommended) durability settings, then if the master fails, a new one will be elected and data is not lost.
    Are transactions ACID with Oracle NoSQL database? How can we prove it?Yes, each operation is executed in an ACID transaction. The API has the concept of "multi" operations which allow the caller to perform multiple operations on sets of records with the same major key, but different minor keys. Those operations are also performed within a transaction.
    Charles Lamb

  • Create multiple rows in Oracle ADF (From Andrejus Baranovskis's Blog)

    Hi All,
    I followed the steps in the Blog Sample.
    I tried this example with 2 tables -> Emp_Details(fields->empId and empName)and Multiple_Entry(fields-> empId and email).
    ashu.jspx is my jsf page and Ashu.java is the backing bean.
    I checked it many times, but getting the same error. Error is as follows:-
    500 Internal Server Error
    javax.faces.FacesException: #{backing_ashu.createButton_action}: javax.faces.el.EvaluationException: java.lang.NullPointerException at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:98) at oracle.adf.view.faces.component.UIXCommand.broadcast(UIXCommand.java:211) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:287) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:401) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:95) at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:233) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:202) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123) at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15) at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111) at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260) at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:234) at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:29) at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:879) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303) at java.lang.Thread.run(Thread.java:595)Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:150) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:92) ... 27 moreCaused by: java.lang.NullPointerException at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:706) at java.util.ResourceBundle.getBundle(ResourceBundle.java:699) at com.praphulla.khandala.view.utils.JSFUtils.getBundle(JSFUtils.java:227) at com.praphulla.khandala.view.utils.JSFUtils.getStringFromBundle(JSFUtils.java:142) at com.praphulla.khandala.view.backing.Ashu.createButton_action(Ashu.java:118) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:146) ... 28 more
    Plz provide me some help.
    Praphul

    Thank you for your reply..
    If the am1.invokeMethod("createUserLoc"); is not there in the while loop, it goes through the while loop and gives SOP values correctly.
    But if I put this statement in while loop, it errors out in the first iteration itself.

  • Can i change default splash screen in Oracle ADF mobile

    hi,
    can i change the default splash screen (i.e. the Oracle screen that shows up) when you open the app in mobile?
    i want to use my own custom splash screen.
    regards,
    ad

    i found that at,
    http://docs.oracle.com/cd/E35521_01/doc.111230/e24475/deploying.htm#CHDGEJAI
    thanks,
    ad

  • How i can print jspx page in oracle adf 10g ?

    i want to print a page by clicking on button "print"
    i need to know if i can do it without java Script ,?!
    i mean from the manage Bean (java class) that related to the page ?
    is there any way that i can show the print dialog and customizeit ?

    hi Frank,
    thank you , i search alot for any solution , but nothing works
    i guess the best idea , is to convert the page that i want to print into pdf using Ireport and then print it !
    thank you again ,
    Malek

  • Expansion of Child table rows under each master table rows

    Hi,
              I am using JDeveloper 11.1.1.5 version for developing ADF application.
        I need to display a master table rows and its child table rows such that
    When I expand master table row,  I need to display child rows under the master row which is I expanded.
    Like this each master table row should expand its child rows between the next master table row (like ShowDetail or detailStamp)
    So kindly suggest ideas on what can be used to bring out this requirement on page.
    If any links available for reference or guidance , kindly mention it and help me out.
    Thanks,
    Vino

    You can use a tree table for this. A sample you can find at http://andrejusb.blogspot.ch/2009/11/tree-table-component-in-oracle-adf.html
    or  http://dstas.blogspot.ch/2011/11/master-detail-detail-using-tree-table.html
    Timo

  • Oracle ADF conformity with XHTML and DOM Level 2

    Dear all,
    I wonder if Oracle ADF 10g can produce documents that confirm with the XHTML and DOM Level 2 standards. I searched in Google but it is little hard to figure out

    Ok, but I taught that after importing myModel2 in myModel1, Jdeveloper realise a merge and it visualizes a unique package, even if it is splitted on two or more projects/models.
    So that, it seems to me this procedure is useful for importing jar file, but not for splitting a very big project in a lot of smaller projects, doesn't it?
    Thanks for your opinion
    Andrea

  • Migration of  ADF 10g application to ADF 11g(Portlet Customization Error)

    Hi,
    Currently we are doing a migration of ADF/Webcenter 10g appication to 11g(11.1.1.6) and in the current 10g application portlet is used which contains the file based content and can be customized using a specific role say(admin).
    We have almost done the migration using the Jdeveloper 11.1.1.6 and most of the pages along with the portlet content are coming similar to the 10g look and feel but whenever we want to do portlet customization using the specific role we are getting the below exception. The content is file based system and the details of the versions are as below
    10g Environment:
    OC4J version. Oracle Containers for J2EE 10g (10.1.3.5.0)
    JDK version- java version "1.5.0_06"
    Webcenter and it’s version : Webcenter 10g(10.1.3.5.0)
    ADF version. Oracle ADF 10g
    Jdeveloper 10.1.3.3.0
    11g Environment: Currently I am using Jdeveloper 11.1.1.6 with Integrated weblogic server
    webcenter extension used: oracle.webcenter.framework_bundle/oracle.webcenter.customization_bundle
    Error which I am getting during portlet customization:
    [2013-02-20T14:47:42.162+05:30] [DefaultServer] [ERROR] [] [oracle.portlet.binding] [tid: [ACTIVE].ExecuteThread: '14' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: portaladmin] [ecid: 39e706a46ad531be:31f43ddc:13cf6ad5231:-8000-0000000000000386,0] [APP:TEST_DEV#V2.0] An error has occured for Portlet Binding portlet3.[[
    java.lang.NullPointerException
    at oracle.adfinternal.model.portlet.binding.PortletModelImpl.getRequireIframe(PortletModelImpl.java:907)
    at oracle.adfinternal.model.portlet.binding.ActivityPortletModelWrapper.getRequireIframe(ActivityPortletModelWrapper.java:71)
    at oracle.adf.model.portlet.binding.PortletBinding.prepareRenderPhase(PortletBinding.java:455)
    at oracle.adf.model.portlet.binding.PortletBinding._refresh(PortletBinding.java:377)
    at oracle.adf.model.portlet.binding.PortletBinding.refresh(PortletBinding.java:969)
    at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:3273)
    at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2876)
    at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareRender(PageLifecycleImpl.java:561)
    at oracle.adf.controller.faces.lifecycle.FacesPageLifecycle.prepareRender(FacesPageLifecycle.java:82)
    at oracle.adf.controller.v2.lifecycle.Lifecycle$9.execute(Lifecycle.java:224)
    at oracle.adfinternal.controller.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:197)
    at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.access$1000(ADFPhaseListener.java:23)
    at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$5.before(ADFPhaseListener.java:402)
    at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.beforePhase(ADFPhaseListener.java:64)
    at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.beforePhase(ADFLifecyclePhaseListener.java:44)
    at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:352)
    at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:222)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
    at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
    at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
    at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.portlet.client.adapter.adf.ADFPortletFilter.doFilter(ADFPortletFilter.java:32)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.webcenter.framework.events.dispatcher.EventDispatcherFilter.doFilter(EventDispatcherFilter.java:44)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.wcps.client.PersonalizationFilter.doFilter(PersonalizationFilter.java:75)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.webcenter.content.integration.servlets.ContentServletFilter.doFilter(ContentServletFilter.java:168)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.webcenter.lifecycle.filter.LifecycleLockFilter.doFilter(LifecycleLockFilter.java:151)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
    at java.security.AccessController.doPrivileged(Native Method)
    at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
    at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
    at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
    at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
    at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Any hellp or suggestion will be helpful for me to resolve this issue.
    Thanks in Advance
    Chetan

    Hi,
    given its a WebCenter question, you want to post it to the Webcenter forum: WebCenter Portal
    Frank

  • Undo changes in adf table row

    I have a table surrounded by a panel collection. In panel collection i have a button for action "createInsert" of view object to add new rows in table. I have created a method in ViewRowImpl with following signature:
    public void undoChanges(){
    refresh(REFRESH_UNDO_CHANGES | REFRESH_FORGET_NEW_ROWS);
    Now i have button in first column of each row in a table for "undochanges". I have done "partialsubmit" true for this button and in partial trigger of table i have given the reference id of this button. Now everything works fine as expected but there is one problem. When i add new row and in row there are some fields required. Now in that row without entering any data, i presses "undo" button, it gives error that some values are missing so in order to avoid this error, i set "immediate" property of button "true". Now it is working fine but ripple effect of this is that when i changes some existing rows and presses "undo" button, table refreshes but does not show old values. I have printed values in above method for changed attribute and i found that in fact values are changing but not reflecting on table inspite of refreshing. What's the reason for it?

    Try putting the partialTriggers on the individual components inside the table columns instead. Having a partialTrigger on the table itself generated by a components inside the table - your button, could cause recursive partialTriggers or "+partialTrigger confusion+"
    Nick

  • Change rows property of ADF Table

    I am trying to set the rows property of an af:table object based on the value of a drop down box (af:selectOneChoice)
    http://img.photobucket.com/albums/v294/jammiedodgers/BrianS/Accounts-1.jpg
    I have tried this a number of ways but can't get the table to pick up the change unless I do a browser page refresh. I have the autoSubmit property of the drop down box set to true. It is bound to the rows property of my backing bean (which is also bound to the table rows property)
    af:table var="row"
    value="#{accountBacking.model}"
    rows="#{accountBacking.rows}"
    first="#{accountBacking.first}"
    banding="row"
    styleClass="table.sample"
    binding="#{accountBacking.table}"
    >
    <f:facet name="actions">
    <af:selectOneChoice id="rowChoice"
    label="Rows Per Page: "
    autoSubmit="true"
    value="#{accountBacking.rows}"
    valueChangeListener="#{accountBacking.rowChange}">
    <f:selectItem itemLabel="5" itemValue="5"/>
    <f:selectItem itemLabel="10" itemValue="10"/>
    <f:selectItem itemLabel="20" itemValue="20"/>
    <f:selectItem itemLabel="50" itemValue="50"/>
    </af:selectOneChoice>
    </f:facet
    Here is the code from by backing bean. (accountBacking)
    package com.stlouiscity.budget.jsf.beans;
    import com.stlouiscity.budget.database.beans.AccountBean;
    import com.stlouiscity.budget.database.dao.AccountDAO;
    import com.stlouiscity.budget.database.dao.DAOFactory;
    import com.stlouiscity.budget.jsf.delegates.AccountService;
    import java.util.List;
    import javax.faces.application.Application;
    import javax.faces.application.ViewHandler;
    import javax.faces.context.FacesContext;
    import javax.faces.event.ValueChangeEvent;
    import javax.faces.model.DataModel;
    import javax.faces.model.ListDataModel;
    import oracle.adf.view.faces.context.AdfFacesContext;
    import oracle.adf.view.faces.model.SortableModel;
    import oracle.adf.view.faces.component.core.data.CoreTable;
    import oracle.adf.view.faces.event.ReturnEvent;
    public class AccountBacking implements java.io.Serializable{
    private AccountService acctService;
    private AccountBean account;
    private CoreTable table;
    private SortableModel model;
    private Integer first;
    private Integer rows;
    /** Creates a new instance of AccountBacking */
    public AccountBacking() { 
    acctService = new AccountService();
    AdfFacesContext afCtx = AdfFacesContext.getCurrentInstance();
    setFirst((Integer)afCtx.getProcessScope().get("first"));
    setRows((Integer)afCtx.getProcessScope().get("rows"));
    //afCtx.getProcessScope().clear();
    public CoreTable getTable() {
    return table;
    public void setTable(CoreTable table) {
    this.table = table;
    public SortableModel getModel() {
    if (model == null)
    refreshAction();
    return model;
    public void setModel(SortableModel model) {
    this.model = model;
    public AccountBean getAccount() {
    return this.account;
    public void setAccount(AccountBean account) {
    this.account = account;
    public void setRowData() {
    try {
    this.account = (AccountBean) this.table.getRowData();
    } catch (NullPointerException npe) {
    this.account = new AccountBean();
    public String editAccountAction() {
    setRowData();
    AdfFacesContext afCtx = AdfFacesContext.getCurrentInstance();
    if (getAccount() == null) {
    setAccount(new AccountBean());
    afCtx.getProcessScope().put("account",getAccount());
    afCtx.getProcessScope().put("first",this.table.getFirst());
    afCtx.getProcessScope().put("rows",this.table.getRows());
    return "EditAccount";
    public String deleteAccount() {
    setRowData();
    acctService.deleteAccount(this.getAccount());
    refreshAction();
    return null;
    public String refreshAction() {
    List list = acctService.getAccounts();
    ListDataModel listModel = new ListDataModel(list);
    model = new SortableModel(listModel);
    table.setValue(getModel());
    table.setRows(getRows());
    table.setFirst(getFirst());
    return null;
    public void rowChange(ValueChangeEvent event) {
    refreshAction();
    public Integer getFirst() {
    return first;
    public void setFirst(Integer first) {
    if (first != null) {
    this.first = first;
    } else {
    this.first = 0;
    AdfFacesContext afCtx = AdfFacesContext.getCurrentInstance();
    afCtx.getProcessScope().put("first",this.first);
    public Integer getRows() {
    return rows;
    public void setRows(Integer rows) {
    if (rows != null) {
    this.rows = rows;
    } else {
    this.rows = 10;
    AdfFacesContext afCtx = AdfFacesContext.getCurrentInstance();
    afCtx.getProcessScope().put("rows",this.rows);
    I am attempting to pass the rows and first property of the table into the process scope and then look them back up during the constructor. The backing bean is request scoped. I do no want to use a session scoped bean because I don't want to have to deal with thread safety.

    One thing...I use a technique mentioned in other threads to refresh the page that changes the view root to the page it is currently at. I call this after I return from a dialog: page to enact any change that the dialog page did that the current page should see. One problem here: the af:table does not seem to refresh (sometimes?), even when I put this partial target assignment in the return action listener of the button that enacted the dialog:...but I found a solution! In the life cycle I look for that view root to come up, tap into the backing bean of the current page to get the table UIComponent, and do this partial target assignment. Here is the lifecycle prepareModel code...
    String lCurrentView = fctx.getViewRoot().getViewId();
    if (PartialPageUtils.isPartialRequest(fctx)) {
    // Create an elsif for each form which has a popup you want to refresh from.
    if (lCurrentView.equals("/WPForm.jspx")) {
    CoreTable AccessoriesTable = (CoreTable)EL.get("#{WPForm.accessoriesTable}");
    AdfFacesContext.getCurrentInstance().addPartialTarget(AccessoriesTable);
    AdfFacesContext.getCurrentInstance().partialUpdateNotify(AccessoriesTable);
    super.prepareModel(ctx);
    Note: EL is a helper class that Steve M. (I think) wrote, which gets and sets ValueBindings. A similar functionality can be found in his ADFUtils and JSFUtils classes in the SRDemo app for ADFBC, downloadable from TechNet.oracle.com ...or the JDev help menu updates section.

  • How to differentiate a row in a ADF table in Oracle 11g

    Hi
    How to differentiage the each row in a ADF table with the back ground colour? I tried with RowBandingInterval option, but it didn't work out?
    Thanks

    Hi,
    setting row banding to 1 (the default) works for me on FF and IE 7
    Frank

  • Jdev 11.1.1.5 R1 How To Get Row Data From ADF Table

    Hi everyone,
    I have an ADF Table Populated with dummy data (for now). Below the Table there is an InputText field.
    What I need to do is have the body of the message show up in the InputText field when the user clicks on a message in the inbox(Table).
    I've been trying to figure this out for quite some time now, unsuccessfully of course. Hopefully you guys can help me change that.
    I do consider myself a beginner still, so please be as clear and specific as possible.
    Thanks in advance!
    Here is the code I have for the Table/InputText and Backing Beans
    <tr>
    <td>
    <af:table value="#{TableBean.messageAll}" var="message"
    rows="5"
    inlineStyle="color:Navy; border-style:outset; border-color:Background; border-width:thick; font-size:small; text-align:center; vertical-align:middle; height:135.0px;"
    width="610" rowBandingInterval="0" id="t1"
    rowSelection="single"
    selectionListener="#{TableBean.messageSelected}"
    immediate="true" summary="Message Inbox"
    disableColumnReordering="true"
    columnSelection="none"
    columnResizing="disabled">
    <af:column sortable="false" align="center"
    id="chechboxCol" width="25"
    minimumWidth="25">
    <f:facet name="header">
    <h:selectBooleanCheckbox id="selectAll"
    onclick="selectAll();"></h:selectBooleanCheckbox>
    </f:facet>
    <h:selectBooleanCheckbox id="selectMessage"
    value="#{message.selected}"
    immediate="true"></h:selectBooleanCheckbox>
    </af:column>
    <af:column id="urgentCol" width="25" align="center"
    minimumWidth="25">
    <f:facet name="header">
    <h:outputText id="urgentHeader">
    <img src="urgent.gif" height="14"
    width="14" alt="Urgent Icon"/>
    </h:outputText>
    </f:facet>
    </af:column>
    <af:column sortable="true" headerText="From"
    align="start" id="fromCol" width="175"
    minimumWidth="175">
    <af:outputText value="#{message.from}"
    id="ot1"/>
    </af:column>
    <af:column sortable="true" headerText="Subject"
    align="start" id="subjectCol" width="175"
    minimumWidth="175">
    <af:outputText value="#{message.subject}"
    id="ot2"/>
    </af:column>
    <af:column sortable="true" headerText="Type"
    align="start" id="c5" width="100"
    minimumWidth="100">
    <af:outputText value="#{message.type}"
    id="ot3"/>
    </af:column>
    <af:column sortable="true"
    headerText="Date Received" align="start"
    id="c6" width="80" minimumWidth="80">
    <af:outputText value="#{message.date}"
    id="ot4"/>
    </af:column>
    <af:column sortable="true" headerText="Body"
    rendered="false" align="start" id="c7"
    width="100" minimumWidth="100">
    <af:outputText value="#{message.body}"
    id="ot5"/>
    </af:column>
    </af:table>
    </td>
    </tr>
    <tr>
    <td>
    <p>
    <af:commandButton text="Print" id="printButton"
    inlineStyle="font-size:x-small;"/>
    </p>
    <af:inputText binding="#{TableBean.textArea}" rows="10"
    readOnly="true" partialTriggers="t1"
    contentStyle="width:620px;"
    inlineStyle="color:Black; outline-color:Background; outline-style:outset;"
    id="it1"></af:inputText>
    </td>
    </tr>
    package Backing;
    import javax.faces.event.ActionEvent;
    import oracle.adf.view.rich.component.rich.input.RichInputText;
    import oracle.adf.view.rich.component.rich.output.RichOutputText;
    import java.util.List;
    import java.util.ArrayList;
    import oracle.adf.view.rich.component.rich.data.RichTable;
    import org.apache.myfaces.trinidad.event.SelectionEvent;
    public class TableBean {
    private RichInputText textArea;
    private message[] messageAll =
    new message[] { new message("Sender 1", "Author 1", "Message 1",
    "Alert", "6/21/2011",
    "This is the body 1."),
    new message("Sender 2", "Author 2", "Message 2",
    "Notification", "6/22/2011",
    "This is the body 2."),
    new message("Sender 3", "Author 3",
    "Message 3", "Broadcast", "6/23/2011",
    "This is the body 3."),
    new message("Sender 4", "Author 4",
    "Message 4", "Alert", "6/24/2011",
    "This is the body 4."),
    new message("Sender 5", "Author 5", "Message 5",
    "Notification", "6/25/2011",
    "This is the body 5."), };
    public message[] getmessageAll() {
    return messageAll;
    public void messageSelected(SelectionEvent selectionEvent) {
    textArea.setValue("Message body should go here.");
    public void setTextArea(RichInputText textArea) {
    this.textArea = textArea;
    public RichInputText getTextArea() {
    return textArea;
    public class message {
    boolean selected;
    String from;
    String to;
    String subject;
    String type;
    String date;
    String body;
    public message(String from, String to, String subject, String type,
    String date, String body) {
    this.from = from;
    this.to = to;
    this.subject = subject;
    this.type = type;
    this.date = date;
    this.body = body;
    public String getFrom() {
    return from;
    public String getTo() {
    return to;
    public String getSubject() {
    return subject;
    public String getType() {
    return type;
    public String getDate() {
    return date;
    public String getBody() {
    return body;
    }

    try this code in selection method
    RichTable object = (RichTable)selectionEvent.getSource();
    Row row = null;
    for (Object facesRowKey : object.getSelectedRowKeys()) {
    object.setRowKey(facesRowKey);
    Object o = object.getRowData();
    JUCtrlHierNodeBinding rowData = (JUCtrlHierNodeBinding)o;
    row = rowData.getRow();
    }

  • How to verify that the user has changed table row data before db update

    Hi all,
    Iam using Oracle ADF with EJBs.
    I have a single selection table that displays rows of data returned from a function of my data control.
    The columns of my table are editable so that the user can change the data. The user selects a row, changes the data in one or more columns of the row and saves the data by means of a submit button. The code in the submit button, identifies the row of the corresponding iterator that the user clicked on and updates the data in the database (using the 'mergeEntity' function of the EntityManager)
    Before saving the data, I want to put some logic to check whether the user has actually changed some data to avoid unnecessary updates in the database . But for this I need a technique to detect that the user has indeed changed some data in the table row.
    One technique I have been using so far was to isolate the iterator row of the table and then query the corresponding row in the database table and compare their values.
    Except from dummy, this technique is not efficient if the table contains many rows.
    Moreover, in my case I have observed that on successive updates on the same row , the query on the database returns the new values (user changed values) and not the actual values contained in the database table. This means that when the user updates an iterator row the cached data affect also the results of the SELECT statement from the actual database table!!! Isn't this strange ?
    Can somebody propose me a neat method to detect when the user has changed the the data of an iterator row ?

    Hey Alan,
    The below solution seems overly complicated to me and can not be implemented without a custom screen and/or the use of JavaScript. Also, if your main concern is that a user may accidentally loose all their data because they closed the browser window or the session times out before they hit the save button then this solution does not help you.
    There are a couple of simpler approaches you can take here:
    # If the use of JavaScript is permissible you can hook into the windows 'onUnload' event, and pop-up a message box which gives the user the opportunity to cancel closing the window and save their case if they haven't already.
    # Implement an autosave feature by hooking into one of events provided by web determinations. A simple (but rather naive) way of doing this would be to hook into the OnRenderScreenEvent and call save on the interview session every time the event fires. This guarantees that all the data the user has submitted will aways automatically be saved, thereby removing the need to make sure the user manually saves their data before closing the browser.
    Automatically making Web Determinations close a browser window has to be done using JavaScript. However, doing so means that a) it won't work for people who turn off JavaScript, which is commonly done for accessibility reasons b) you'll likely run afoul of the browser's security mechanism (they generally won't let you close a window that you didn't open and some really don't like you doing that at all).
    Thanks,
    Kristy

  • How to get edited row values from ADF table?

    JDev 11.
    I have a table which is populated with data from Bean.
    I need to save changes after user make changes in any table cell. InputText is defined for table column component.
    I have defined ValueChangeListener for inputText field and AutoSubmit=true. So when user change value in inputText field, method is called:
    public void SaveMaterial(ValueChangeEvent valueChangeEvent) {
    getSelectedRow();
    SaveMaterial(material);
    This method should call getSelectedRow which take values from selected table row and save them into object:
    private Row getSelectedRow(){
    RichTable table = this.getMaterialTable();
    Iterator selection = table.getSelectedRowKeys().iterator();
    while (selection.hasNext())
    Object key = selection.next();
    table.setRowKey(key);
    Object o = table.getRowData();
    material = (MATERIAL) o;
    System.out.println("Selected Material Desc = "+material.getEnumb());
    return null;
    Problem is that getSelectedRow method doesnt get new (edited) values, old values are still used.
    I have tried to use ActiveButton with same method and it works fine in that case. New values are selected from active row and inserted into object.
    JSF:
    <af:table var="row" rowSelection="single" columnSelection="single"
    value="#{ManageWO.material}" binding="#{ManageWO.materialTable}">
    <af:column sortable="false" headerText="E-number">
    <af:inputText value="#{row.enumb}" valueChangeListener="#{ManageWO.SaveMaterial}" autoSubmit="true"/>
    </af:column>
    <af:column sortable="false" headerText="Description">
    <af:inputText value="#{row.desc}" valueChangeListener="#{ManageWO.SaveMaterial}" autoSubmit="true"/>
    </af:column>
    </af:table>
    <af:activeCommandToolbarButton text="Save" action="#{ManageWO.EditData}"/>
    What is a correct place from where save method should be called to get new (edited) values from ADF table?
    Thanks.

    Did you look into the valueChangeEvent?
    It has oldValue and newValue attributes.
    public void SaveMaterial(ValueChangeEvent valueChangeEvent) {
    Object oldVal = valueChangeEvent.getOldValue();
    Object newVal = valueChangeEvent.getNewValue();
    // check if you see what you are looking for.....
    getSelectedRow();
    SaveMaterial(material);
    }Timo

Maybe you are looking for

  • Using 6G mini to transfer 21GB library to new computer

    My mini is only 6G but my library is 22GB. How do I use the mini to transfer the entire library to a new computer?

  • G/L Acct Determination - lookups blank

    Hello,     I am attempting to populate the G/L Account Determination tabs, but noticed for most of the account types when I click on the account lookup its empty.  ???  My COA has been loaded and control accounts marked properly.  For example on the

  • SAP MDM field status and SAP ERP field status

    Just wanted to understand what are the implications of a field status mismatch between SAP MDM and SAP ECC for Vendor Masters. Further, what happens in a scenario where the vendor master data is changed directly in SAP ECC. I am presuming that both s

  • Raw material qty & value

    hi all Raw material qty. is zero in mmbe,mc.9 & material master plant stock .But it shows -ve value in  material master & MC.9 Whyvalue  is -ve?

  • Source Data file format for FDM

    Hi, I am new in FDM and have couple of question on data loading.. We are using FDM to load the data in Essbase. Please help me on these- Question 1: In source data file, suppose, we have around 300 account members and around 100 PO numbers. There are