ADF Calculations

Hi,
I have a query panel and Results panel on a single page. Results are displayed based on the values selected in query panel. I have to do certain calculations in the displayed fields at runtime and also have to add new columns not part of the VO in the results panel.
Can somebody let me know the approach please?
Thanks,
Lakshmi.

you can calculate the sum of all columns by having a transient attribute.
For details, check
http://download.oracle.com/docs/cd/E16162_01/web.1112/e16182/bcquerying.htm#CHDHJHBI
Calculate Sum in VO issue again
Thanks,
Navaneeth

Similar Messages

  • ADF 'calculated' non-database field

    I need some help with this
    In a VO (lets say VO1(Cod.....Judet) i have a transient attribute Judet,
    then i have VO2 :
    select decode(l.cod_parinte,
                      null,
                      l.denumire_d,
                      l.cod,
                      l.denumire_d,
                      l.denumire_d || ' (' || lp.denumire_d || ')') denumire_d,
              l.COD_JUDET,
              l.cod
          from localitati l, localitati lp
          where l.cod = :CodLocalitate
             and l.cod_parinte = lp.cod(+)Now I wan that Judet to be populated based on the result of of querying VO2 with the VO2.CodLocalitate = VO1.Cod
    Till now i had declared a view accessor on VO1 for VO2 and put a LOV on Judet (View Att.=Judet ; List Att=CodJudet) and the UI to show me the denumire_d field
    The problem is that when i try the view object in OBCB i have a empty field(although if i run the appropriate query i have a value)
    I did a workaround ... putting the query(adapted properly) of VO2 into the expression of Judet att and it works like this... anyway i don't like this approach...
    So what have i done wrong in the first place?
    Edited by: kquizak on Nov 7, 2008 4:40 PM
    It seams that the workaround does not work ... my Judet field does not refreshes after an update

    i need to acheive this querry in adf
         select count(*) into var_count
         from appl_journals
         where aj_bu=:global.bu and
         aj_year=:FIN_PERIODS.fp_year and
         AJ_PLANT =:FIN_PERIODS.FP_PLNT AND
    aj_period=:FIN_PERIODS.fp_period and
         aj_appl=:AJ_APPL and
         aj_status='N' ;
         if var_count<>0 and :AJ_APPL is not null then
              :APPLICATIONS.appl_exist:='Yes';          
         elsif :AJ_APPL is not null then
              :APPLICATIONS.appl_exist:='No';
         end if;
    how can i perform this

  • What is advisable for complex calculation fields in ADF?

    Hi,
    I am using JDev 11.1.1.2.0 with ADF 11g.
    I have a screen where user is going to select couple of LOVs. Based on this selection one of my "read only field" should get refreshed.
    This field should actually do calculation based on the 2 fields and another column of a table.
    So for such cases is it advisable to build a function and call this from a binding method OR there is a better way of displaying a calulated field.
    NOTE:
    1. using the expression on a transient field is good if the calculated fields are available in the row. Here I have to fetch a value from a completely different table's column that is not present in the row. Again the value that will be fetched will depend on some other parameter which is available to me in the session
    2. I am looking out to make this generic since these combination of fields are repeated in few of the screens and for same calculations
    Kindly advice the ways in which this can be handled. And pls point the best from your view point.
    Thanks in advance.

    Any quick suggestion?

  • How implement (Forms Builder ) Calculation Item in JDeveloper ADF?

    How implement (Forms Builder ) Calculation Item in JDeveloper ADF?
    (Forms Builder ) Property
    Calculation -> Calculation Mode=Summary
    Calculation -> Formula -> Summary Function=Sum
    Calculation -> Formula -> Summarized Block=Block Name
    Calculation -> Formula -> Summarized Item=Quantity Item

    You can have transient attributes in your VO that do calculations.
    http://download.oracle.com/docs/html/B25947_01/bcentities010.htm#BABHGCAH
    For summaries here are a few other options:
    http://www.freewebalbum.com/blogs/faces/bjanko/blogs.jsp?blog=bjanko20070725180020
    http://andrejusb.blogspot.com/2008/01/complex-calculated-values-in-oracle-adf.html

  • Calculated Field In ADF Form

    I want to create calculated field.
    I have 2 date fields, my user case is to calculate difference between those 2 date field and display difference on the fly to user.

    You will need to write custom logic in a method of a managed Bean in your View Controller project.
    follow these steps -
    1)In the ViewController project ,create a java Class called <whatever_name_you want>.java
    2) register the managedBean in TaskFlow->Overview-> Managed Bean say in pageFlowScope.
    3)create a public method which returns a Number (of days or whatever you need) in your bean which calculates difference between the dates using Calender API (You can google for this)
    4)Bind this method to the value property of the field which shows the difference between these fields.

  • ADF Faces Table with a Total row calculated?

    Hi there OTN Community:
    I have another doubt.
    I have an EJB dataControl, and i use one of his collections to display the data in an ADF Faces Table. One of the columns of the Adf Faces Table is numeric, And i have to display the Total of that Column.
    I only shows 10 rows per screen, but i need to show the total of all the rows.
    How i can calculate it?

    Mmmmm..... You're right!...I will try that.
    Thanx :)
    Hey, and....You know? i was thinking, maybe i can get the iterator and then capture each object of the iterator to compute the total. That is a crazy idea?, its possible?, its not recommended? or its ok too? :P
    Thanx in advance.
    Dany

  • ADF Groovy Expression for calculation

    Hi,
    I am using JDeveloper 11gR2. For a transcient attribute in a VO, I must add an expression that will calculate and return a value according to a business rule.
    I.e. if 'Standard' then column a * 0.3 or column b * 0.3
               elsif 'Premium' then column c * 0.3
               else 'Luxury' then column d * 0.3 Of course, using the appropriate Groovy expression. Does anyone have an example I could try?
    Thanks!
    Edited by: user545194 on 02.02.2013 07:28

    for example if att is the attribute that you want to calculate and it depend on val attribute
    the groovy exp is done on att
    if(val=='Standard') return a * 0.3
    else if(val=='Premium') return c * 0.3
    else if(val=='Luxury') return d * 0.3
    you must add attribute val, a, c ,d to the dependent attribute
    hope it helps
    Fakhri

  • Urgent help needed in achieving below ADF 11g flow

    Hi, I am using JDEV 11.1.1.2.0 with ADF 11g.
    I have a below requirement.
    Say in below eg. I am getting col1, col2, col3 from a single tbl in screen 1. On clicking col1's row I should go to screen 2
    Screen1
    Col1     Col2     Col3
    Nm1     Code1     10
    Nm1     Code1     30
    Nm2     Code1     30
    Nm1     Code2     20
    Here in screen 2 I will have a calculated field as shown below. Besides this In the same screen I will have a list showing distinct of col2 for the value cliked in col1. So here in this eg. it will be for Nm1 I will have 2 values in the list Code1 and Code2.      
    Screen 2          
    Col1     Nm1     
    Col2     Code1     
    Tot     *40*     
    Col2     Select     
    Code1     X     
    Code2          
    Now here if user selects the radio of 'Code2' Then my above data should change as below
    Col1     Nm1     
    Col2     Code2     
    Tot     *20*
    Col2     Select     
    Code1          
    Code2     X
    I do this by passing the col1 value as a param to a query VO.
    I have tried this using different VOs like a VO with query, VO with user defined column... nothing helps.
    I am just unable to reach to screen 2. I am either getting invalid column OR missing in out parameters.
    Can any one help on how and what should be done? This is not even master-details stuff. master-details seems easier than this.
    Urgent help is needed.
    Thanks in advance

    I have resolved your problem and build a sample application.
    You have to create 2 views and use master detail.
    First view will be a simple view for the page 1 and second view will be readonly using group by. Then create a view link between them.
    Let me know your email id. I will email you the sample application.
    SID
    Edited by: manieshsailoz on Apr 26, 2010 5:12 PM

  • Is it possible to call wcf webservice on adf mobile?

    Hi all,
    I tried to consume a wcf webservice method on adf mobile by using java api as seen as below code snippet.
    I tried to run on classical adf generic application by creating webservice proxy. Then i could get response properly. But when i consume webservice method on adfmobile i get http 501 error response. I have tried using drag and drop into amx page and execute binding action, result is same.
    What might be the reason?
    brgds
        private boolean validateClient()
            List pnames = new ArrayList();
            List pvals = new ArrayList();
            List ptypes = new ArrayList();
            pnames.add("UserName");
            pvals.add("test");
            ptypes.add(String.class);
            pnames.add("Password");
            pvals.add("123");
            ptypes.add(String.class);
            pnames.add("DeviceID");
            pvals.add("123456");
            ptypes.add(String.class);
            GenericType result = null;
            try
                ClientDetail clientDetail = null;
                result = (GenericType)AdfmfJavaUtilities.invokeDataControlMethod("mlService", null, "ValidateClient", pnames, pvals, ptypes);
                for (int i = 0; i < result.getAttributeCount(); i++)
                    // Get each individual GenericType instance that holds the attribute key-value pairs
                    GenericType entityGenericType = (GenericType)result.getAttribute(i);
                    clientDetail = (ClientDetail)GenericTypeBeanSerializationHelper.fromGenericType(ClientDetail.class, entityGenericType);
                if (clientDetail != null)
                    if (clientDetail.getIsValidate().booleanValue())
                        return true;
                    else
                        AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                                  new Object[] { "No access",
                                                                                                 "No access: ", "Ok" });
                } else
                        AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                                  new Object[] { "No access",
                                                                                                 "No access: ", "Ok" });
                    return false;
            catch (AdfInvocationException aie)
                if (AdfInvocationException.CATEGORY_WEBSERVICE.compareTo(aie.getErrorCategory()) == 0)
                    throw new AdfException("Error with the server. Please try later.", AdfException.ERROR);
                aie.printStackTrace();
                throw new AdfException("Uzak veri sağlayısı çağrılırken hata oluştu", AdfException.ERROR);
            return false;

    No, as far as i know they are not secured service. What if they are secured, do i need to authenticate during consuming method in webservice proxy, dont i. But as i said before, i could consume and get response on webservice proxy in regular adf project.
    I can consume methods of another webservice (i.e. http://www.html2xml.nl/Services/Calculator/Version1/Calculator.asmx?WSDL) also in all methods that presented.
    No, i can not obtain access on another way to server, it is remote and out of my control.
    Ok, i tried as you say.
    Problem exists here too. May be an interopability problem on between adf platform and wcf service? What do you think Mr Shmeltzer?
    http://i42.tinypic.com/ny8jtd.png
    <WebServiceConnectionMessages> <debugExecuteFailure> Failed to execute a SAAJ interaction.
    oracle.j2ee.ws.client.jaxws.JRFSOAPFaultException: Client received SOAP Fault from server : The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://tempuri.org/IAuthenticationService/ValidateClient'.
      at oracle.j2ee.ws.client.jaxws.DispatchImpl.throwJAXWSSoapFaultException(DispatchImpl.java:1040)
      at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:826)
      at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:235)
      at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:106)
      at oracle.adf.model.connection.webservice.impl.SaajInteractionImpl.execute(SaajInteractionImpl.java:80)
      at oracle.adfinternal.model.adapter.webservice.provider.soap.SOAPProvider.execute(SOAPProvider.java:324)
      at oracle.adfinternal.model.adapter.webservice.WSDataControl.invokeOperation(WSDataControl.java:277)
      at oracle.adf.model.bean.DCBeanDataControl.invokeMethod(DCBeanDataControl.java:444)
      at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:266)
      at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1626)
      at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2169)
      at oracle.adf.model.bean.DCBeanDataControl.invokeOperation(DCBeanDataControl.java:507)
      at oracle.adf.model.adapter.AdapterDCService.invokeOperation(AdapterDCService.java:307)
      at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:731)
      at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.invokeMethodAction(JUMethodIteratorDef.java:173)
      at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.initSourceRSI(JUMethodIteratorDef.java:656)
      at oracle.adf.model.binding.DCIteratorBinding.callInitSourceRSI(DCIteratorBinding.java:1700)
      at oracle.adf.model.binding.DCIteratorBinding.internalGetRowSetIterator(DCIteratorBinding.java:1674)
      at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4476)
      at oracle.adf.model.binding.DCExecutableBinding.refreshIfNeeded(DCExecutableBinding.java:341)
      at oracle.adf.model.binding.DCIteratorBinding.getRowSetIterator(DCIteratorBinding.java:1634)
      at oracle.jbo.uicli.binding.MyIteratorBinding.initSourceRSI(JUAccessorIteratorDef.java:768)
      at oracle.adf.model.binding.DCIteratorBinding.callInitSourceRSI(DCIteratorBinding.java:1700)
      at oracle.adf.model.binding.DCIteratorBinding.internalGetRowSetIterator(DCIteratorBinding.java:1674)
      at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4476)
      at oracle.adf.model.binding.DCExecutableBinding.refreshIfNeeded(DCExecutableBinding.java:341)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isAttributeUpdateable(JUCtrlValueBinding.java:1707)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isAttributeUpdateable(JUCtrlValueBinding.java:1826)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isUpdateable(JUCtrlValueBinding.java:2722)
      at oracle.adfinternal.view.faces.model.AdfELResolver._isReadOnly(AdfELResolver.java:130)
      at oracle.adfinternal.view.faces.model.AdfELResolver.isReadOnly(AdfELResolver.java:147)
      at oracle.adfinternal.view.faces.model.AdfELResolverProxy.isReadOnly(AdfELResolverProxy.java:78)
      at com.sun.faces.el.DemuxCompositeELResolver._isReadOnly(DemuxCompositeELResolver.java:293)
      at com.sun.faces.el.DemuxCompositeELResolver.isReadOnly(DemuxCompositeELResolver.java:322)
      at com.sun.el.parser.AstValue.isReadOnly(Unknown Source)
      at com.sun.el.ValueExpressionImpl.isReadOnly(Unknown Source)
      at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer._getUncachedReadOnly(EditableValueRenderer.java:476)
      at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer.cacheReadOnly(EditableValueRenderer.java:406)
      at oracle.adfinternal.view.faces.renderkit.rich.LabeledInputRenderer.beforeEncode(LabeledInputRenderer.java:128)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:510)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:1088)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:50)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1604)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1523)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:187)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:318)
      at org.apache.myfaces.trinidad.component.UIXComponent.encodeFlattenedChildren(UIXComponent.java:283)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:420)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:208)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:1127)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:50)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1604)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1523)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:187)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:318)
      at org.apache.myfaces.trinidad.component.UIXComponent.encodeFlattenedChildren(UIXComponent.java:283)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:420)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:208)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeCenterFacet(PanelStretchLayoutRenderer.java:878)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeCenterPane(PanelStretchLayoutRenderer.java:1299)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeMiddlePanes(PanelStretchLayoutRenderer.java:350)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeAll(PanelStretchLayoutRenderer.java:315)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:641)
      at oracle.adf.view.rich.render.RichRenderer.encodeAllChildrenInContext(RichRenderer.java:3062)
      at oracle.adfinternal.view.faces.renderkit.rich.FormRenderer.encodeAll(FormRenderer.java:274)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:641)
      at oracle.adf.view.rich.render.RichRenderer.encodeAllChildrenInContext(RichRenderer.java:3062)
      at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer.encodeAll(DocumentRenderer.java:1275)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1677)
      at oracle.adfinternal.view.faces.component.AdfViewRoot.encodeAll(AdfViewRoot.java:91)
      at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:431)
      at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:233)
      at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.renderView(ViewDeclarationLanguageFactoryImpl.java:350)
      at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
      at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:273)
      at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:165)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:1035)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:342)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:236)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:509)
      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:173)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:125)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
      at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
      at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
      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)
    <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://tempuri.org/"><env:Header/><env:Body><ns1:ValidateClient/></env:Body></env:Envelope><SOAPProvider> <handleFault> The Web Service call generated a SOAP Fault : [s:Sender] The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://tempuri.org/IAuthenticationService/ValidateClient'.
    <SOAPProvider> <handleFault> Verify if all the necessary parameter values are provided correctly and confirm to the schema constraints as defined in the WSDL
    <SOAPProvider> <handleFault> If the service requires any SOAP headers, Verify that they have been correctly defined in the request
    <SOAPProvider> <handleFault> The Web Service may have generated an exception in an attempt to handle the request, and has returned a SOAP fault to indicate that exception.
    brgds

  • How to use the Calculated attibute in view object

    Hi,
    I have a view object query with the calculated attribute name as 'TRANCODE' in the below sql.This query works for the initial page loading.
    After the page gets loaded, there is a search section in the same page at the top.
    Here i will have to build the whereclause to the same query and retrieve the values.
    i am using jDeveloper 10.1.3.1, with adf and jHeadstart.
    Can some one tell as how to use the calculated attribute TRANCODE in whereclause?
    SELECT /*+ first_rows(10) */
    BatchCntl.FILE_CNTL_ID,
    CASE WHEN chk_bit(Entry.ENTRY_FLAGS, 2)='Y' OR Entry.ENTRY_SUBSTATUS = 'D' OR Entry.ENTRY_SUBSTATUS = 'J'
    THEN
    CASE eeh.TRAN_CODE
    WHEN '21' THEN 'C'
    WHEN '22' THEN 'C'
    WHEN '31' THEN 'C'
    WHEN '32' THEN 'C'
    WHEN '26' THEN 'D'
    WHEN '27' THEN 'D'
    WHEN '36' THEN 'D'
    WHEN '37' THEN 'D'
    ELSE eeh.TRAN_CODE
    END
    ELSE
    CASE Entry.TRAN_CODE
    WHEN '21' THEN 'C'
    WHEN '22' THEN 'C'
    WHEN '31' THEN 'C'
    WHEN '32' THEN 'C'
    WHEN '26' THEN 'D'
    WHEN '27' THEN 'D'
    WHEN '36' THEN 'D'
    WHEN '37' THEN 'D'
    ELSE Entry.TRAN_CODE
    END
    END AS TRANCODE,
    FROM Batch_Cntl BatchCntl, Entry, ENTRY_EDIT_HIST eeh
    WHERE (BatchCntl.BATCH_TYPE = 'E')
    AND (BatchCntl.BATCH_STATUS in ('A','D','R','P'))
    AND entry.in_batch_cntl_id = BatchCntl.BATCH_CNTL_ID
    and Entry.fi_rt = eeh.fi_rt (+)
    and Entry.entry_id = eeh.entry_id (+)
    AND (Entry.ENTRY_STATUS in ('A','D','R','P'))
    ORDER BY BatchCntl.BATCH_CNTL_ID, Entry.entry_id
    regards
    Raj.

    Let's say your application module is com.yourcompany.someapp.services.MyService, and let's say you authored a method like the following in the MyServiceImpl.java file:
      public void doSomething(int i, String s) {
      }and you exposed this AM custom method using the AM editor.
    BC4J design time will automatically create you the com.yourcompany.someapp.services.common.MyService interface that will look like this if you go look at the source code:
    package com.yourcompany.someapp.services.common;
    import oracle.jbo.ApplicationModule;
    public interface MyService extends ApplicationModule {
      public void doSomething(int i, String s);
    }To use your custom method from a client, just cast your ApplicationModule to your custom interface like this:
    import com.yourcompany.someapp.services.common.MyService;
      MyService mySvc = (MyService)yourAM;
      mySvc.doSomething(1,"foo");

  • Help! ADF default behavior rejected by end users...

    Hi,
    We have built an ADF 11g application during the past months. Last week we had our first user acceptance test with a small group of users. The users were very satisfied about the nice looks of the screens. But they had quite a lot of issues with the default behavior of ADF. I'll provide a list of the most important issues below. I hope more people here at OTN have experienced these issues and perhaps have some workarounds. And perhaps Oracle can use lists like this to improve the next version of ADF...
    <ol><li>Multi record edit<br>We have a lot of multi record edit screens. These are all editable tables. Those tables have the following problems:
    <ol type="a"><li>Whenever a partial refresh occurs, the whole table gets reloaded. This takes some time, which is uncomfortable. But the main problem here is that the table does not preserve the scroll bar position. The situation can be improved a little bit by setting the <tt>displayRow</tt> attribute to <tt>"selected"</tt> on the table. This will cause the table to show the selected record at the top of the view port after a refresh. But this still confuses the end users. In their experience the records are randomly jumping around.</li>
    <li>Records are not always inserted at the bottom. (In fact, they are inserted above the selected record.) End users simply expect records to be inserted at the bottom of the table, no matter what. And I can't disagree with them. Isn't there a setting to achieve this in ADF?</li>
    <li>Whenever the user navigates to another record in the editable table, all validation rules on the record he navigates from are fired. That means he cannot leave a required field empty to fill it later. The end users say this is very annoying. We would like to delay all validation until the user presses the Commit button. But as far as I know this is not possible, is it?</li>
    <li>The selected record position is not preserved on a full refresh. Our Commit button forces a full refresh of the page. This sounds like a sensible choice to me. However, users tend to click on Commit quite often. But after a full refresh of the page, the currently selected record in a record set is always reset to the first record in the set. In a large data table, this annoys the users very much. Isn't it possible to preserve the selected record over a full refresh?</ol>
    <li>Annoying validation errors<br>Many end users are annoyed by the somewhat "persistent" validation error messages. In a larger form or an editable table, users sometimes want to ignore an error and first enter other data, before correcting the error. This is hardly possible, because ADF sets the input focus to fields with errors and keeps popping up windows with a list of fields that have errors. We would like to make the validation less "aggressive". It is okay to give a field a red border if it contains an error. But leave the input focus where it is. And don't show any popup until the user presses the Commit button. And even then show the popup window only once.</li>
    <li>ADF BC caching and business rules in the database<br>We have some business rules in our database that automatically fill some fields with default values. We have e.g. a master-details relation, where a value in the master record is calculated based on the values of the detail records. We have set the calculated field in the master record to "refresh after update" and "refresh after insert". Sometimes the value of the field gets refreshed, but sometimes not. Users know that the field should be calculated by "the system", and are asking if they did something wrong if it doesn't. I know we could do the calculation in ADF, but our policy is to have all business rules in the database and to not repeat ourselves (DRY). Is there another way to guarantee that the calculated value in the master record gets updated after an update or insert of one or more detail records?</li>
    <li>Partial refresh loses data<br>If a field causes a partial submit to occur, fields in the same record that were not (partial) submitted before lose their data. This forces us to enable partial submit on all fields. But that causes a delay after moving the focus to the next field and validations to be fired too early.</li>
    </ol>
    I've numbered the items above, please use these number as a reference if you're posting an answer to a specific question.
    Please let me know any solution, even if it is only a partial solution. We've a nasty situation now. Our application is (nearly) finished, but it is blocked for production by the users because of the behavior of the ADF framework, on which we have very little influence. We can't blame the users for that, most of their criticism is fully justified. So we have to come up with a good solution for these issues before we can go to production. So any help would be highly appreciated!
    Best regards,
    Bart Kummel
    PS.
    We're using JDeveloper/ADF 11.1.1.1.0, we deploy to a WebLogic 10.3.1 server and we have an Oracle 10g database. We're using the full ADF stack: ADF Business Components, ADF Bindings and ADF Faces.

    Hi Bart,
    I can answer for few of your questions.
    Bart Kummel wrote:
    Hi,
    We have built an ADF 11g application during the past months. Last week we had our first user acceptance test with a small group of users. The users were very satisfied about the nice looks of the screens. But they had quite a lot of issues with the default behavior of ADF. I'll provide a list of the most important issues below. I hope more people here at OTN have experienced these issues and perhaps have some workarounds. And perhaps Oracle can use lists like this to improve the next version of ADF...
    <ol><li>Multi record edit<br>We have a lot of multi record edit screens. These are all editable tables. Those tables have the following problems:
    <ol type="a"><li>Whenever a partial refresh occurs, the whole table gets reloaded. This takes some time, which is uncomfortable. But the main problem here is that the table does not preserve the scroll bar position. The situation can be improved a little bit by setting the <tt>displayRow</tt> attribute to <tt>"selected"</tt> on the table. This will cause the table to show the selected record at the top of the view port after a refresh. But this still confuses the end users. In their experience the records are randomly jumping around.</li>You can set the fetchSize in the iterator to a minimum value (Say if you are displaying 20 records in the table at a time, you can set the fetchSize to 20, so that, it will fetch only 20 records at a time, and the remaining records on demand basis, i.e they will be fetched when you scroll in the table).
    <li>Records are not always inserted at the bottom. (In fact, they are inserted above the selected record.) End users simply expect records to be inserted at the bottom of the table, no matter what. And I can't disagree with them. Isn't there a setting to achieve this in ADF?</li>I suppose you are using the default createInsert operation. You can write your own method instead of the default createInsert, which would have something like
    public void customCreateInsert(){
    vo.last();
    vo.createInsert();
    }You can expose this method as method action and use it in place of default CreateInsert.
    <li>Whenever the user navigates to another record in the editable table, all validation rules on the record he navigates from are fired. That means he cannot leave a required field empty to fill it later. The end users say this is very annoying. We would like to delay all validation until the user presses the Commit button. But as far as I know this is not possible, is it?</li>You can set the immediate property to true for the column for which you want to skip the validation. However, the validation will fire when you submit / commit the changes (which is expected).
    <li>The selected record position is not preserved on a full refresh. Our Commit button forces a full refresh of the page. This sounds like a sensible choice to me. However, users tend to click on Commit quite often. But after a full refresh of the page, the currently selected record in a record set is always reset to the first record in the set. In a large data table, this annoys the users very much. Isn't it possible to preserve the selected record over a full refresh?</ol>Again, you can have a custom method, which would get the current row, commit the transaction and do a setCurrentRowWithKey to point to the last selected record after commit.
    <li>Annoying validation errors<br>Many end users are annoyed by the somewhat "persistent" validation error messages. In a larger form or an editable table, users sometimes want to ignore an error and first enter other data, before correcting the error. This is hardly possible, because ADF sets the input focus to fields with errors and keeps popping up windows with a list of fields that have errors. We would like to make the validation less "aggressive". It is okay to give a field a red border if it contains an error. But leave the input focus where it is. And don't show any popup until the user presses the Commit button. And even then show the popup window only once.</li>You can add a af:messages tag in the top and set globalOnly to true. Also, set the immediate property for the items to skip the validation when they tab out.
    <li>ADF BC caching and business rules in the database<br>We have some business rules in our database that automatically fill some fields with default values. We have e.g. a master-details relation, where a value in the master record is calculated based on the values of the detail records. We have set the calculated field in the master record to "refresh after update" and "refresh after insert". Sometimes the value of the field gets refreshed, but sometimes not. Users know that the field should be calculated by "the system", and are asking if they did something wrong if it doesn't. I know we could do the calculation in ADF, but our policy is to have all business rules in the database and to not repeat ourselves (DRY). Is there another way to guarantee that the calculated value in the master record gets updated after an update or insert of one or more detail records?</li>We need some more information. Do you see any "pattern" on which this things occur?
    -Arun

  • 11g (11.1.1.4) ADF and OPA

    Hi,
    I am using JDeveloper/WLS 11g (11.1.1.4). I have also installed downloaded the latest OPA modeling and server (Oracle Policy Automation 10.2.0 modeling and runtime).
    I then went ahead and installed the determinations-server.war in 11g (embedded in JDeveloper) after modifying the ‘application.properties’ to include the following
    load.rulebase.from.claspath=true
    rulebase.path=rulebases
    I was able to test the http://localhost:7101/web-determinations/ URL
    I was also able to create a basic rule form the modeler and run it against the "Oracle Web determinations" from the tool (instead of the "Oracle Determinations Server").
    My questions are as follows.
    Q1. Deployment of Rules with Fusion: I would like my business users to be able to create rules and test them against a test WLS server preferably the Weblogic server that hosts my web-determinations. In this regard, i would like to know how i can configure the OPM tool to deploy/test against Weblogic. In other words, should i set specific values to Tools->Options->Rule based development->Embedded Server? The only settings i see are for Tomcat, but i am assumign i can put something similar to weblogic. Any sample will be appreciated.
    Note that i do understand the issue about rulebase.path directory. In other words, i can either
    a) explode deploy the determinations-server.war , or
    b) add a director that will contains my rules to the weblogic class path, or
    c) use something like -Ddeterminations.server.rulebase.dir=/some/other/dir/rulebases in my startWeblogic.cmd
    Q2. OPA with ADF Example: Can anyone point me to a working example of OPA that has been integrated with ADF 11g. In other words, i am looking for an end-to-end scenario where i can develop my business rules in OPA and use them in an ADF application. It would be better if the example uses some values of the business rules that reside in a database.
    Q3. OPA versus OBR: Can someone articulate lucidly the use cases when someone would chose OBR (Business Rules in ADF) versus OPA (the haley product), and the implications on ADF development.
    Thanks very much,

    1. In the current version, OPM doesn't directly deploy to anything other than local TomCat. You'll need to manually refresh your WebLogic environment with the latest rulebase.
    2. I'm not aware of an ADF sample. I assume your goal is to host Web Determinations interviews in an ADF UI?
    3. You should use OPA instead of OBR if you need any of the following:
    a) Rules in natural language in any of the supported OPA languages (English, Chinese, French, Spanish, Portuguese, etc....)
    b) Rules in Word/Excel document format that can be easily shared with business users
    c) Interactive interviews for guided decision making, where questions can be automatically generated from rules, and screens are shown only as needed to make progress towards an answer
    d) Detailed decision reports of which rules and data were used to reach a decision
    e) Productized integration with Siebel or SAP
    f) Rich test case development and regression testing capabilities
    More generally OPA is very good at determinations. I.e. reaching the one right decision given a set of input data. It is not a good fit for optimization problems where the goal is to seek the best outcome given a series of constraints. It is also good at taking a large set of law/policy documents are managing them as interconnected rules. It is possible to efficiently manage thousands of pages of material as an OPM project.
    For ADF development, anywhere you have a process that involves a complex decision step, or a calculation that depends on complicated rules that may change frequently or need good business visibility, OPA is a good choice.
    Davin.

  • View object that will allow to see data from two tables in a adf table

    Hi,
    I've been have serious issues to resolve this functional requirements with ADF.
    Basically I have two tables let say employee and department.
    A need a read only adf table to show the employees values but I don't want the users to see the department id, instead I want them to see the department name and all this in the same read only adf table.
    I created a view object based on such a query below:
    select employeelastname, employeefirstname, departmentname from employee, department where employee.departmentid = department.departmentid (+)
    Note the outer join here because some employees don't have department assigned but I still want to see them in my read only table.
    The problem is that the view object is based on a sql query and is using calculated attributes instead of entities and I am getting that error "rowkey does not have any primary key attributes" each time I select a row inmy adf read only table. So the popup I defined when the user select a row does not work properly and I need a better solution. I will also have the option for the users to delete a record selected in the read only table so really need entities behind there not just a view.
    My view object also include LOVs but I realized LOVs only work for tables but not for read only tables. Too bad the fonctionality is almost there... So even if I have lovs defined that show the data like I would like it to be seen for tables it does not help for ready only tables. Any way to have read only table working with LOVs (user will not be able to change the values or select another value in the list but at list they would see the department name instead of the department id)?
    Thanks to anyone that would be able to help me on this.
    Stephane

    Let me first say that I would use Shays approach and only under special circumstances (which are beyond this thread) use the solution outlined below:
    You can use the read only VO based on your query without basing it an entities. All you have to do is to mark one or more attributes as primary key in the VO. This should solve the "rowkey does not have any primary key attributes" error.
    Now to delete a row (I'm not sure which row department or employee you mean here) you use the selected read only row, get the PK of the row and call a service method in the application module of in a VO which is based on an entity and remove the row there. You can even use the removeRowWithKey operation from the data control to archive this.
    The second problem I don't understand. If you show the user a read only table there in no need to show a lov as you can't change the value. If your problem is that you need to show the department name instead of the department id, you simply add the department name to the attributes you select with your query.
    Timo

  • How to use sum analytic function in adf

    Hi
    jdev 11.1.1.5
    oracle 11g r2
    I want to use analytic function (sum,count,avg and ...) .
    I see [url http://andrejusb.blogspot.co.uk/2013/02/oracle-analytic-functions-for-total-and.html]Oracle Analytic Functions for Total and Average Calculation in ADF BC
    and use it in my vo and jsf page,my vo have too much record and I want to have sum in table footer on demand (because of performance) and if user do not want to see the sum in footer of table it do not calculate sum,
    what is your idea?

    Before I read that blog I use another vo for sum but after that blog decide to use analytic fuction becuase we have some page that have to many dvt graph and table and know we use seperate vo for them and it has not good performance and too many query must run in database ,I want to have 1 vo with some analytic function for graph and tables

  • How to programmatically change style in an ADF table

    Hi,
    I got an ADF table generated form my data controls.
    But I need to change de style of every cell in my backing bean.
    I can't really find anything usefull on google, hopefully you guys can provide me with some usefull information.

    I got my answer somewhere else :
    >
    Based on the comments we now know that you use jdev 11.1.2.2.0. What you can do is to bind the styleClass property of the table to a backing bean property. The property in the bean has a getter and a setter method. In the setter method you can get all the values you need from the row and do you calculation. Based on the outcome you return the name of a style class suitable for the cell. The different style classes you define in a skin fro the application. If you e.g. defien the following style classes in your skin
    .high_value { background-color:green; }
    .negative_value { background-color:red;}
    and in a bean in request scope, which you access from the page the table is on
        private String styleForCell;
    public String getStyleForCell()
        // get the value of the cell
        FacesContext lContext = FacesContext.getCurrentInstance();
        ELContext lELContext = lContext.getELContext();
        ExpressionFactory lExpressionFactory = lContext.getApplication().getExpressionFactory();
        Number val;
        val = (Number) lExpressionFactory.createValueExpression(lELContext, "#{row.valargument}", Object.class).getValue(lELContext);
        if (val == null)
            return "";
        // do the calculation and return the suitable style class
        int ival = val.intValue();
        if (ival >= 100000 )
            return "high_value";
        else if (ival < 0)
            return "negative_value";
        else
            return "";        
    public void setStyleForCell(String aStyleForCell)
        this.styleForCell = aStyleForCell;
    }Now you can access the calculated style class from the tables column styleClass property as #{beanname.styleForCell} This will call the method for each cell of the column.

Maybe you are looking for

  • How to remove the Ask Toolbar

    The Ask Toolbar has installed itself, it is not listed in the plug ins or extentions. It is not shown on the "Add or remove programs". Please can someone tell me how to remove it? It is not as easy as everyone says... I can't get rid of it.

  • User exits for payroll PCPO0001- EXIT_RPCIPE00_002 not working

    We have activated User exit PCPO0001- EXIT_RPCIPE00_002, requirement was to set the line item text SGTXT of the subsequent Accounting document, but there seem to be no activity happening for it  (assigned breakpoints in the exit codes but transaction

  • No entry in table $ for key $ 554C 400100 20090

    Hi Gurus, While running payroll--for some employees(pre . number 125) the following error is coming: No entry in table $ for key $ 554C 400100 20090 Technical error no. 72 02.01.2009 Processing terminated for EE 00000125 This error is coming while I

  • Adding scale to a number data type

    I have a current column that is Number(22) that has many rows in it. I would like to keep the 22 and add 2 to the scale, can this be done on the fly????

  • Recovery in a different Host

    Hi, I have a RMAN backup running in my production database with nocatalog and the backup is in Disk. I want to restore the backup in a different host(QA) by mounting the backup files in QA server and recover only two tablespaces. Can anyone tell me t