Refactoring: change applicaon modele of a view objects.

We develop an ADF BC - ADF RC application J Dev 11.1.1.1
We want to reorganize our applciaton module and view objects.
But we developed our pages too.
is it possible ? Is tyehre anyone do it before ?
Thanks...

Try right clicking on ADF BC components and look into the refactor option - it should be better in 11g.

Similar Messages

  • Dynamically change the Binding of a view object

    I want to reuse a panel several times in my application. The VO has one bind parameter (:1). The same panel should be reused several times with different bind variables.
    I found a technical note concerning this issue called: How to Dynamically Change the binding of a View Object to a JClient Panel. This works for JDeveloper 9i but not for JDeveloper 19g. Does anybody know how to dynamically change the binding in JDeveloper 10g

    You may use bindRowSetIterator() and pass in a custom fetched ViewObject or a RowSetIterator to the iterator binding that is displayed in your panel.

  • Changing the query on a view object

    I have a view object right now, based on an entity. It is the default view object, so that means the query in the view object is straight forward, it grabs all of the attributes from the table. And there is no WHERE clause.
    In reality I only want to show a finite set of rows from my table. Every time a record is changed/edited in this entity and committed, a new row in the database is created with the same information (I'm using CreateWithParams) except for a few columns.
    I actually don't really have update on this table, just creation of new rows. But to the user, I want it to 'look' like they are editing something in the table.
    Example:
    12, 11:32,Thompson, 60 (the user edits this information in an adf table, and a new row is created in the db)
    12, 11:55, Thompson, 75
    I have a timestamp (see above) field in the database that is used as part of my primary key, so that I know which record is the latest.
    When the VO query is run, I want the user to only see the latest row from the db.
    12, 11:55, Thompson, 75
    So...
    I went to my VO, and I changed the WHERE query to add this:
    where t1.TimeStamp = (Select MAX(t2.TimeStamp) FROM rcl.x t2 where t1.uid = t2.uid);
    Now, this isn't a mysql/sql question. There's actually a better query that I'd rather run, but the VO editor doesn't allow me to change the query itself....
    When I save the new WHERE to my VO, run my page again, I get the expected result (showing me only the latest records).
    However, when I try and sort on the table in which my data is displayed, I am now getting ORDER BY errors.
    I don't want my VO to be read-only sql based. I want to be able to update my table, so I have my VO running off of the entity.
    Why doesn't the VO allow me to change the query itself? (Like do a subquery, instead of having my where clause do the work)
    Why are order by errors being thrown when I sort on my adf table after changing the where clause in my view?
    Hopefully I wasn't too convoluted in the explanation of my problem..
    Thanks in advance,
    Joel

    HI Joe,
    Regarding your problem you can do one of the following tasks:
    1- easily to tuning on your view object, I mean in the tuning page of the view you can set that only return 1 record or 2-3 record fetch not all the record.
    in the order by you will order by the timestamp field and descending.
    2- you can order by the timestamp descending and in the where clause only set the rownum<2 (will return the last record) you can also set rownum<5 and get the 4 last record etc.
    3-editing the view query in the expert mode is not advised at all because of many consequences that you will face.
    4- maybe it is not bat that you add a readonly view for the table you mentioned and every time you unpdate the entity just re-execute the read-only view.( this method maybe is good maybe is not it depends on your business logic)
    Regards.
    Edited by: Amir Khanof on Sep 3, 2010 11:11 PM

  • How to change the default behaviour of View Object in oracle adf

    Hi,
    I have created a view object from an entity object and placed it as a table with multiple lines on my page.
    When I run my page, by default, it loads all the rows based on the sql in the VO.
    My requirement is when I load my page, I don't want to return any data in that table.
    I am using JDeveloper 11.1.2.4.
    Please can you advise how can I achieve this functionality?
    thanks
    Muhammad

    Hi Shay,
    I've used  the refreshCondition #{bindings.Sku.inputValue ne null} as per your suggestion but getting below error
    <RichExceptionHandler> <_logUnhandledException> ADF_FACES-60098:Faces lifecycle receives unhandled exceptions in phase RENDER_RESPONSE 6
    java.lang.NullPointerException
        at oracle.adf.model.binding.DCExecutableBinding.refreshMasters(DCExecutableBinding.java:265)
        at oracle.adf.model.binding.DCExecutableBinding.refreshIfNeeded(DCExecutableBinding.java:340)
        at oracle.jbo.uicli.binding.JUCtrlHierBinding.getRootNodeBinding(JUCtrlHierBinding.java:90)
        at oracle.jbo.uicli.binding.JUCtrlHierBinding$1JUCtrlHierHintsMap.internalGet(JUCtrlHierBinding.java:210)
        at oracle.jbo.common.JboAbstractMap.get(JboAbstractMap.java:54)
        at oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding$1DecoratedHintsMap.internalGet(FacesCtrlHierBinding.java:305)
        at oracle.jbo.common.JboAbstractMap.get(JboAbstractMap.java:54)
        at javax.el.MapELResolver.getValue(MapELResolver.java:164)
        at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
        at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
        at com.sun.el.parser.AstValue.getValue(Unknown Source)
        at com.sun.el.ValueExpressionImpl.getValue(Unknown Source)
        at org.apache.myfaces.trinidad.bean.FacesBeanImpl.getProperty(FacesBeanImpl.java:73)
        at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.getProperty(BaseColumnRenderer.java:1195)
        at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.layoutHeader(BaseColumnRenderer.java:643)
        at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.encodeAll(BaseColumnRenderer.java:152)
        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.table.BaseTableRenderer.layoutColumnHeader(BaseTableRenderer.java:1197)
        at oracle.adfinternal.view.faces.renderkit.rich.TableRenderer.encodeAll(TableRenderer.java:636)
        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 org.apache.myfaces.trinidad.component.UIXCollection.encodeEnd(UIXCollection.java:617)
        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.PanelGroupLayoutRenderer._encodeChild(PanelGroupLayoutRenderer.java:447)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer.access$1500(PanelGroupLayoutRenderer.java:30)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:734)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:637)
        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.PanelGroupLayoutRenderer.encodeAll(PanelGroupLayoutRenderer.java:360)
        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.PanelGroupLayoutRenderer._encodeChild(PanelGroupLayoutRenderer.java:447)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer.access$1500(PanelGroupLayoutRenderer.java:30)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:734)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:637)
        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.PanelGroupLayoutRenderer.encodeAll(PanelGroupLayoutRenderer.java:360)
        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.adf.view.rich.render.RichRenderer.encodeStretchedChild(RichRenderer.java:2194)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer._renderPane(PanelSplitterRenderer.java:1599)
        at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer.encodeAll(PanelSplitterRenderer.java:279)
        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)
    any ideas please?

  • Changing focus line in List View object?

    Hi -
    I have an list view object on my dashboard that displays about 50 lines of data, with the very first line being a total line. You can drill-into the any one item on the list view to see detail in another chart. The content of the list view is updated when the date range is change from current month to previous month.
    My question is this: if I select the 5th line item in the list view then change the date range, the list view retains the focus on the 5th line even after it is updated - so is it possible to force the list view to change the focus to the 1st line everytime the date range changes?
    I am guessing no because I see nothing in the properties of the list view that allows you to control focus.
    Thanks in Advance!

    Melissa,
    No there is no option as such in the component. May be you can use the Reset button component.
    -Anil

  • View Object Editor in JHS 10.1.2 does not save any changes....

    Hi,
    When I did exactly as the JHeadstart Tutorial says, I noticed that
    in JHeadstart 10.1.2 with JDeveloper 10.1.2
    JHeadstart does not save any changes I make in the View Object Editor
    of the Application Structure File Editor !!!
    For instance when I change the Width property of an Attribute from 60 to 5
    it changes to 5, but when close the View Object Editor
    and reopen it again, the Width is back to 60...
    Even when I click the button "Validate the Application Structure File" before
    closing the VO Editor....
    What do I do ??? Is the only solution to edit the XML file
    or something like that without using the VO Editor ?
    Or is there a better solution ?
    Does it maybe work in an older version of JHeadstart ?
    If so, where is the older version available for download ?
    Thanks,
    Eric Joosse

    Eric,
    How did you leave the JHeadstart VO editor?
    The changes should be saved when you click the OK button in the VO editor itself, but they are not saved if you click Cancel, or the little cross in the upper right corner, or leave it open while going back to the Application Structure File editor. That's because it's a standalone editor (you can also find it when right-mouse-clicking the VO in the Model project). The icon in the Application Structure File editor is just a quick way to get to it.
    Hope this helps,
    Sandra Muller
    JHeadstart Team
    Oracle Consulting

  • How to create dynamic View Object and Dynamic Table

    Dear ll
    I want to create a dynamic view object and display the output in a dynamic table on the page.
    I am using Jdeveloper 12c "Studio Edition Version 12.1.2.0.0"
    This what I did:
    1- I created a read only view object with this query "Select sysdate from dual"
    2- I added this View object to the application module
    3- I created a new method that change the query of this View object at runtime
        public void changeVoQuery(String dbViewName) {
            String sqlstm = "Select * From " + dbViewName;
            ViewObject dynamicVo = this.findViewObject("DynamicVo");
            if (dynamicVo != null) {
                dynamicVo.remove();
            dynamicVo = this.createViewObjectFromQueryStmt("DynamicVo", sqlstm);
            dynamicVo.executeQuery();
    4- I run the application module for testing the method and I passed "Scott.Emp" as a parameter and the result was Success
    5- Now I want to show the result of the view on the page, so I draged and dropped the method from the data control as a parameter form
    6- I dragged and dropped the view Object "DynamicVo" as a table and I choose "generate Column Dynamically at runtime". This is the page source
    <af:panelHeader text="#{viewcontrollerBundle.SELECT_DOCUMTN_TYPE}" id="ph1">
            <af:panelFormLayout id="pfl1">
                <af:inputText value="#{bindings.dbViewName.inputValue}" label="#{bindings.dbViewName.hints.label}"
                              required="#{bindings.dbViewName.hints.mandatory}"
                              columns="#{bindings.dbViewName.hints.displayWidth}"
                              maximumLength="#{bindings.dbViewName.hints.precision}"
                              shortDesc="#{bindings.dbViewName.hints.tooltip}" id="it1">
                    <f:validator binding="#{bindings.dbViewName.validator}"/>
                </af:inputText>
                <af:button actionListener="#{bindings.changeVoQuery.execute}" text="changeVoQuery"
                           disabled="#{!bindings.changeVoQuery.enabled}" id="b1"/>
            </af:panelFormLayout>
        </af:panelHeader>
        <af:table value="#{bindings.DynamicVo.collectionModel}" var="row" rows="#{bindings.DynamicVo.rangeSize}"
                  emptyText="#{bindings.DynamicVo.viewable ? 'No data to display.' : 'Access Denied.'}"
                  rowBandingInterval="0" selectedRowKeys="#{bindings.DynamicVo.collectionModel.selectedRow}"
                  selectionListener="#{bindings.DynamicVo.collectionModel.makeCurrent}" rowSelection="single"
                  fetchSize="#{bindings.DynamicVo.rangeSize}" filterModel="#{bindings.DynamicVoQuery.queryDescriptor}"
                  queryListener="#{bindings.DynamicVoQuery.processQuery}" filterVisible="true" varStatus="vs" id="t1"
                  partialTriggers="::b1">
            <af:iterator id="i1" value="#{bindings.DynamicVo.attributesModel.attributes}" var="column">
                <af:column headerText="#{column.label}" sortProperty="#{column.name}" sortable="true" filterable="true"
                           id="c1">
                    <af:dynamicComponent id="d1" attributeModel="#{column}"
                                         value="#{row.bindings[column.name].inputValue}"/>
                </af:column>
            </af:iterator>
        </af:table>
    when I run the page this error is occured
    <Nov 13, 2013 2:51:58 PM AST> <Error> <oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter> <BEA-000000> <ADF_FACES-60096:Server Exception during PPR, #1
    javax.el.ELException: java.lang.NullPointerException
    Caused By: java.lang.NullPointerException
    Can any body help me please
    thanks

    Have you seen Shay's video https://blogs.oracle.com/shay/entry/adf_faces_dynamic_tags_-_for_a
    All you have to do is to use the dynamic table to get your result.
    Timo

  • Dynamic view object and LOV

    Here's the problem I've encountered. I need to create an input LOV, where list is taken from dynamically created view object (it is created using createViewObjectFromQueryStmt; query may be different, but it always has 3 columns with fixed names - that's the rule). The problem is quite similar to that described here: {thread:id=935344}
    I've tried to create a "stub" LOV with a query like
    select 1 ID, 1 RESULTVALUE, 'dynamic' SNAME from dual(all the queries will have 3 columns with names ID, RESULTVALUE and SNAME) and then changing it's query by using something like this
        public void recreateDynamicViewObject(String newSQL) {
            ApplicationModule am = ADFUtils.getApplicationModuleForDataControl(DATACONTROL);               
            if (am.findViewObject(DYNAMIC_VO_NAME) != null)
                am.findViewObject(DYNAMIC_VO_NAME).remove();       
            ViewObject vo = am.createViewObjectFromQueryStmt(DYNAMIC_VO_NAME,newSQL);
            vo.executeQuery();               
        }but it didn't work (with the same results as it was mentioned in the post I've given reference to - the VO changes, but the new rows are not displayed).
    My question is almost the same: is it possible to use a dynamically created VO in LOV? The option of creating a VO for each query is unacceptable in my case, because these queries in fact are created by end users, and there can be any number of these queries.
    In case it is important - I use JDeveloper 11.1.1.2.0.

    I am also looking for a similar solution.
    Actually it works partially.
    I have a created a permanent View Object with a dummy query and in the run time I am replacing the View Object query in the ProcessRequest in CO.
    My problem is when you click on the LOV it works fine with the changed query results, but when I clicked again on the LOV, it shows the the dummy query results which I gave it in the VO.
    Here is my AM method which is called in the CO.
    BOSS_Parameter1_LOV_VOImpl parameterVO =
    getBOSS_Parameter1_LOV_VO1();
    parameterVO.clearCache();
    parameterVO.executeQuery();
    System.out.println(parameterVO.getQuery());
    parameterVO.setWhereClause(null);
    parameterVO.setWhereClauseParams(null);
    parameterVO.setQuery(lovQuery); // this the dynamic query
    parameterVO.setWhereClause(null);
    System.out.println(parameterVO.getQuery());
    Even though its showing the changed query in the getQuery, the LOV is not refreshed.
    I am also changing the Query of the View Object in the ProcessFormRequest
    if (pageContext.isLovEvent() || pageContext.getParameter(EVENT_PARAM).equals("lovPrepare")) {
    call the above mentioned method in the AM.
    But, still it doesn't work.
    Any tips will be appreciated.
    Thanks,

  • How to create LOV not based on a View Object attribute?

    Hi,
    I am creating a handed-made search form and I want to create an af:inputListOfValues.
    I have :
    - a read-only-view-object to get the LOV values from BD.
    - af:inputListOfValues tag (droped from Component Palette).
    How can I create the listOfValuesModel in Bindings layer? (the inputListOfValues is not based on a View Object attribute).

    Sorry, I think I am not very clear in my posts.
    My requirement is to create a LOV but I have no ViewObject. I just want an input (not based on a view object attribute), alone, but with a LOV (where lov's datas are get from a view object).
    In a "normal" LOV I would have something like this :
    in jsff :
    <af:inputListOfValues id="departmentIdId"
                                popupTitle="Search and Select: #{bindings.DepartmentId.hints.label}"
                                value="#{bindings.DepartmentId.inputValue}"
                                label="#{bindings.DepartmentId.hints.label}"
                                model="#{bindings.DepartmentId.listOfValuesModel}"
                                required="#{bindings.DepartmentId.hints.mandatory}"
                                columns="#{bindings.DepartmentId.hints.displayWidth}"
                                shortDesc="#{bindings.DepartmentId.hints.tooltip}">
            <f:validator binding="#{bindings.DepartmentId.validator}"/>
            <af:convertNumber groupingUsed="false"
                              pattern="#{bindings.DepartmentId.format}"/>
          </af:inputListOfValues>in pageDef :
    <listOfValues StaticList="false" IterBinding="EmployeesView1Iterator"
                      Uses="LOV_DepartmentId" id="DepartmentId"/>in model layer : a view object (EmployeeView) with view accessor and LOV based attribute, and a read only view object (DepartmentRVO) to get datas for the LOV.
    But in my case I have no ViewObject, so I don't know how to create the listOfValuesModel in fragment pageDef.
    I have :
    <af:inputListOfValues label="Label 1"
                                    popupTitle="Search and Result Dialog"
                                    id="ilov1" model="here I want to point to a listOfValuesModel but I don't know how to create it"/>in pageDef : the listOfValuesModel but I don't know how to create it.
    in model layer : just a read only view object (like DepartmentRVO), to get the datas for the LOV.
    Edited by: h0s on 29 févr. 2012 00:31

  • BC4J: Override Views Object default package

    Hi all,
    I need to change the package of the views objects when creating the entity object by reverse engineering from DB. As they are created in the same package of the entity objects.
    Thankx

    Yes, you can. No one step can do all thing for me.

  • Changing SQL Query in View Object during runtime

    Hello everyone,
    I've got some problems with view objects which I dropped on my JSP page.
    1.)
    What I want to do is changing SQL query during running my application. I have view object based on select query: "SELECT * FROM DEPARTMENTS". And after clicking button (or something else) I want to change the query: "SELECT * FROM EMPLOYEES" and I want to see this changes in my JSP page. Setting the query and executing it doesn't work. How can i do it?
    2.)
    I want to create view object programmatically, but I don't know exactly how many columns / attributes it will have. If I know the names of the attributes it's ok, but i don't know it... So I've got function, its body is:
    Row rowForInsert = this.createRow();
    this.addDynamicAttribute("ParamName");
    rowForInsert.setAttribute("ParamName", "asda");
    this.insertRow(rowForInsert);
    but this code doesn't work (I can't see any changes on my JSP Page).

    Thank's a lot!
    But there's another thing to do which I can't deal with.
    I want to create view object in one jspx page, a I don't want to move to another.
    And this method doesn't work.
    What can I do?
    I've got following error (I'm using dynamic table, when I create view object first time it's ok, but when i want to create another, there's execption):
    java.util.NoSuchElementException
    *     at java.util.ArrayDeque.removeFirst(ArrayDeque.java:251)*
    *     at java.util.ArrayDeque.pop(ArrayDeque.java:480)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer.removeCachedReadOnly(EditableValueRenderer.java:414)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.LabeledInputRenderer.afterEncode(LabeledInputRenderer.java:139)*
    *     at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:526)*
    *     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.adf.view.rich.render.RichRenderer.encodeChildInContext(RichRenderer.java:3118)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.renderDataCell(BaseColumnRenderer.java:1468)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.encodeAll(BaseColumnRenderer.java:166)*
    *     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.TableRenderer.renderDataBlockRows(TableRenderer.java:2803)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.TableRenderer.encodeAll(TableRenderer.java:685)*
    *     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 org.apache.myfaces.trinidad.component.UIXCollection.encodeEnd(UIXCollection.java:617)*
    *     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)*
    *     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1677)*
    *     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:1032)*
    *     at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:339)*
    *     at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:237)*
    *     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)*
    *<LifecycleImpl> <_handleException> ADF_FACES-60098:Faces - cykl życia otrzymuje nieobsługiwane wyjątki w fazie RENDER_RESPONSE 6*
    javax.el.PropertyNotFoundException: Target Unreachable, 'bindings' returned null
    *     at com.sun.el.parser.AstValue.getTarget(Unknown Source)*
    *     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.adf.view.rich.render.RichRenderer.encodeChildInContext(RichRenderer.java:3118)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.renderDataCell(BaseColumnRenderer.java:1468)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.encodeAll(BaseColumnRenderer.java:166)*
    *     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.TableRenderer.renderDataBlockRows(TableRenderer.java:2803)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.TableRenderer.encodeAll(TableRenderer.java:685)*
    *     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 org.apache.myfaces.trinidad.component.UIXCollection.encodeEnd(UIXCollection.java:617)*
    *     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)*
    *     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1677)*
    *     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:1032)*
    *     at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:339)*
    *     at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:237)*
    *     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)*
    *<2012-10-24 10:16:59 CEST> <Error> <HTTP> <BEA-101020> <[ServletContext@16325184[app:test66 module:test66-ViewController-context-root path:/test66-ViewController-context-root spec-version:2.5]] Servlet failed with Exception*
    javax.el.PropertyNotFoundException: Target Unreachable, 'bindings' returned null
    *     at com.sun.el.parser.AstValue.getTarget(Unknown Source)*
    *     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)*
    *     Truncated. see log file for complete stacktrace*
    *>*
    *<2012-10-24 10:16:59 CEST> <Notice> <Diagnostics> <BEA-320068> <Watch 'UncheckedException' with severity 'Notice' on server 'DefaultServer' has triggered at 2012-10-24 10:16:59 CEST. Notification details:*
    WatchRuleType: Log
    WatchRule: (SEVERITY = 'Error') AND ((MSGID = 'WL-101020') OR (MSGID = 'WL-101017') OR (MSGID = 'WL-000802') OR (MSGID = 'BEA-101020') OR (MSGID = 'BEA-101017') OR (MSGID = 'BEA-000802'))
    *WatchData: DATE = 2012-10-24 10:16:59 CEST SERVER = DefaultServer MESSAGE = [ServletContext@16325184[app:test66 module:test66-ViewController-context-root path:/test66-ViewController-context-root spec-version:2.5]] Servlet failed with Exception*
    javax.el.PropertyNotFoundException: Target Unreachable, 'bindings' returned null
    *     at com.sun.el.parser.AstValue.getTarget(Unknown Source)*
    *     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.adf.view.rich.render.RichRenderer.encodeChildInContext(RichRenderer.java:3118)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.renderDataCell(BaseColumnRenderer.java:1468)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.encodeAll(BaseColumnRenderer.java:166)*
    *     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.TableRenderer.renderDataBlockRows(TableRenderer.java:2803)*
    *     at oracle.adfinternal.view.faces.renderkit.rich.TableRenderer.encodeAll(TableRenderer.java:685)*
    *     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 org.apache.myfaces.trinidad.component.UIXCollection.encodeEnd(UIXCollection.java:617)*
    *     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)*
    *     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1677)*
    *     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:1032)*
    *     at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:339)*
    *     at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:237)*
    *     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)*
    *SUBSYSTEM = HTTP USERID = <WLS Kernel> SEVERITY = Error THREAD = [ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)' MSGID = BEA-101020 MACHINE = JR TXID = CONTEXTID = 1a4c398e070e58ea:-4d4bf6f8:13a91b10737:-8000-000000000000021e TIMESTAMP = 1351066619887*
    WatchAlarmType: AutomaticReset
    WatchAlarmResetPeriod: 30000
    and my function which creates view object is:
    ViewObject vo = this.findViewObject("v1");
    vo.remove();
    vo = this.createViewObjectFromQueryStmt("v1", st);
    vo.executeQuery();
    Edited by: 965647 on 2012-10-24 01:18
    Edited by: 965647 on 2012-10-24 03:02

  • Changing a Programmatic View Object's query at run-time

    Hi,
    I've created a programmatic View Object using the information in '35.9.3 Key Framework Methods to Override for Programmatic View Objects' in the Oracle Middleware Fusion Guide and bound it to a BarChart. This has worked fine using the following:
    String myColumn = "Quant1";
    protected void create() {
    getViewDef().setQuery(null);
    getViewDef().setSelectClause(null);
    setQuery(null);
    String myQuery = "SELECT Service as MyService, " + myColumn + " as MyValue FROM ColumnTestTable WHERE 1 = 1";
    getViewDef().setQuery(myQuery);
    setQuery(myQuery);
    I also have my data updating automatically. I have public properties in my viewObjImpl class which I can set and update the value of myColumn. I then thought it would just be a case of re-calling the create() method and the SQL would be updated and my chart would auto-update using the new column to select it's values, the value of the property updates and the create method is called but the chart doesn't display any different data and stops auto-updating. Does anybody know if this is possible and if so what I may have missed?
    Cheers, Tom

    Hi Timo,
    I moved everything to a different public method and solved the problem by firing the execute() method which I hadn't been doing previously and the chart updates with the correct data.
    However, once I execute the SQL my chart stops auto-updating with changes to the data in the database - do you know how I update the SQL query but keep my chart auto-updating? Perhaps I have to re-register for the registerDatabaseChangeListener for the query collection?
    Thanks in advance, Tom

  • How to change sql expression of SQL-Calculated Attribute of view object ?

    Hi
    jdev 11.1.1.5
    I have a view object with a SQL-Calculated Attribute (sumAnalytic) how can I change sql expression of this attribute in runtime?
    for example in application module method??

    Hi Mr Timo
    Thanks for your reply but I do not need dynamic vo because I can not change all of my vo
    I only need to change expression of SQL-Calculated Attribute of view object in run time.
    For this I set expression in view object something like this 'select 2 from dual' and in run time in my AM method I get the vo query and replace 'select 2 from dual' with something like 'selet sum(amnt) over (partition by 1)' and set new query.
    But I think the better solution must exist
    Thanks

  • Error: demo.model.AppModule: Application module demo.model.AppModule has a view instance EmpByEmail1 that references an invalid view object.

    Error: demo.model.AppModule: Application module demo.model.AppModule has a view instance EmpByEmail1 that references an invalid view object.
      intially i created view object named EmpByEmail.........for that EmpByEmail1 is created in datacontrols....i deleted EmpByEmail in demo.model by mistake and i created again with same name EmpBYEmail another view object...again another EmpByEmail2 is created in datacontrols.....
    while i am running i am getting following error:::::::
    Error: demo.model.AppModule: Application module demo.model.AppModule has a view instance EmpByEmail1 that references an invalid view object.

    Hi,
        Please seasrch for the EmpByEmail1 file in ur project and remove all the details in the Page Def and UI and then try again.
    Due to the EmpByEmail1 existance in page Def this may occur . It may help , still if it was not working then I am sorry for that.

  • How do I query changed view object attribute in another view object

    Jdeveloper 10.1.3.4
    My requirement is that I want to be able to query a view object (based on entity) on a non-key attribute where the value I am searching on may either be in the database on an existing record or, have just been recorded by updating a different view object based on the same entity (and yet to be committed).
    When querying the second view object for a value just updated via a different view object, the second view object always returns no rows. I had expected the process to be :
    EntityA
    ViewObjectA based on EntityA
    ViewObjectB based on EntityA
    ViewObjectA - query row with key = 123. update attribute Y with value 456 (attribute Y in database null). Entity cache for EntityA, key 123, atttribute Y updated with value 456
    ViewObjectB - query row with attribute = Y. expect record in EntityA cache just updated to be returned. Instead, nothing is returned
    Here is the code I was using (where RandScheduleEdit and RandScheduleSearch are identical view objects based on entity object RandSchedule)
      public static void main(String[] args) {
        String        amDef = "test.cache.model.AppModule";
        String        config = "AppModuleLocal";
        ApplicationModule am = Configuration.createRootApplicationModule(amDef,config);
        ViewObject rsEdit = am.findViewObject("RandScheduleEdit");
        Key rsKey = new Key(new Object[]{40});
        Row[] rsEditRows = rsEdit.findByKey(rsKey,1);
        Row rsEditRow = rsEditRows[0];   
        rsEditRow.setAttribute("SId", new Number(7827));
        ViewObject rsSearch = am.findViewObject("RandScheduleSearch");
        rsSearch.setWhereClause("S_ID = :SId");
        rsSearch.defineNamedWhereClauseParam("SId", null, null);
        rsSearch.setNamedWhereClauseParam("SId",new Number(7827));
        rsSearch.executeQuery();
        Row rsSearchRow = rsSearch.first();
        Configuration.releaseRootApplicationModule(am, true);
      }Why does rsSearch not find the record S_ID = 7827 ? It seems to only be querying new records in the database and ignoring the cached record just updated ?
    Any help greatly appreciated.
    Cheers,
    Brent

    rsSearch.setNamedWhereClauseParam("SId",new Number(7827));This might help:
    rsSearch.setQueryMode(ViewObject.QUERY_MODE_SCAN_ENTITY_ROWS);
    rsSearch.executeQuery();

Maybe you are looking for