Implementing Singleton in ADF?

How do I share the same instance of java object across all logged in users in ADF? I would like to do something similar to a singleton pattern in java using ADF.
Your advice/suggestions will help me.
thanks

Thanks for the suggestion of placing in managed bean at application level.
If the object is updatable, how can we prevent multiple users from updating at the same time?
thanks

Similar Messages

  • Implement singleton in ALBPM

    How can I implement singleton in ALBPM? I want to have only one process instance of a particular process type at any point in time.
    Thanks in advance!

    I found my singleton use case is not working. So, I need to post more questions.
    In my scenario, I want to limit the concurrency of the process instances in order to limit the concurrency of the external processing being done. This external processing is initiated within the ALBPM process by sending a message to the external server. However, I would still like to create unlimited amount of process instance.
    Currently, I can configure singleton by changing the properties in the process's begin activity. There are two options to limit concurrency. I can either set "Do not create" or "Allow creation but limit concurrent executions". If I choose "Do not create", it will not allow me to create another process instance when currently there is one executed. If I choose "Allow creation but limit concurrent executions", it will actually execute all the instances that I started and exceeded the concurrency limit that I set.
    Not sure what would be the correct behavior for the option "Allow creation but limit concurrent executions". Could it be a bug? Or it’s the fact that my process initiated the external processing in an async way. It sends a message to initiate the external processing and then wait for an external event notification from the external processing server? With this Notification Wait causes ALBPM to start executing the next process instance while waiting for the event notification.
    Is there an option to allow creation but limit the actual number of concurrency processes instances being executed? That is the instances is created by will not continue until another instance is completed finished.
    Thanks,
    Wing

  • The Excel-Mania - Best Ways of Implementing Excel-Like ADF

    Hello people, good afternoon!
    I would like to share with you a doubt i have implementing complex, matrix-like forms in ADF. More often than i'd like to hear, users ask for input forms that closely resemble Microsoft Excel, where the dimensions are layered both vertically and horizontally, and the intersection between them must contain an input or output component, allowing themselves to rapidly input the data they need or to create a web version of Oracle Reports' Matrix Report. Some cases are:
    1) The user wishes to associate the employees (located in table EMPLOYEES) to the projects (located in table PROJECTS) in a screen that lays out the employees as columns and the projects as rows in a table. The intersection between them must contain a checkbox, which will insert a third record when selected, on a table called EMP_PROJ, which associates the employees to the projects.
    2) The user wishes to input a timecard in a time control system. This system must have a screen that shows the days in the week as columns, and the projects the employee is working on as rows. On the intersection, we must provide an input text where he will enter the hours he worked on that specific project on that day.
    3) The user wishes to see a screen that shows the Open Auctions they have in a Purchasing system as rows in a table, crossed with the suppliers that have bidded on these (as the columns). The intersection must contain the price each supplier bidded on each Auction.
    As you can see, i run across this requirement A LOT =). And, as much as i have polished my "Web-Like-Applications-Are-Not-Like-This" and "You-Are-Not-Working-With-Excel" speeches, our beloved users never learn ;)
    Nevertheless, i have been looking for a consistent way to implement this behavior, and i have found some options along the way. I would like to know your impressions on this matter, and if you have any "Best-Practices" that you imagine for this case.
    CASE 1: Creating a Dynamic, On-The-Fly View Object by using ADF BC APIs and using af:table component to do the trick on the page
    PROS: Less work in the View layer, Preservation of the Table CSS Layout (very nice blue header and light brown cells)
    CONS: A LOT of work on the BC layer, creates an awful lot of View Objects, and generates tons of java code on the Application Modules.
    CASE 2: Creating the model as usual and working with repeating layouts on ADF Faces (for example, enclosing an af:cellFormat on an af:forEach to repeat each column)
    PROS: Simplifies the BC layer, making it much cleaner and maintainable.
    CONS: Loses a lot of the declarative wonders of ADF Faces and also the CSS Layouts, since we are using cellFormat, rowLayout and tableLayout instead of table tag we have to manually apply the styles to the columns and rows.
    Of course, both implementations take an awful lot of time. Any other implementation styles are quite welcome (ADF Wizards, step in!)
    Anyone wants to discuss better ways of doing it?
    Best Regards,
    Thiago Souza

    Well, you could do the following:
    1) Create a stored procedure that assembles the data into a rowset with rows and fields like the format you want.
    2) Create stored procedures that handle insert, update, and delete.
    3) Create an entity object definition with all transient attributes. Make the attributes match the elements of one row.
    4) Override doDML() in the entity object class to call your procedures (the doc explains how to do this). You might also need to do a bit of research and figure out if you need to override some other method so you can report rows with transient attribute changes only as needing posting. (getPostState(), maybe?)
    5) Create a view object definition with entity-derived attributes based on your EO attributes.
    6) Override the appropriate methods to call your data assembly procedure rather than execute a query (this is also in the doc).
    Still kind of kludgy, but it keeps your business components pretty clean, especially if you use framework classes to do most of the work for you. (I have a partial example of how to do that here.) Of course, it keeps your business components clean by moving the real work to the DB, but some people find that more maintainable that a kazillion business components.
    Hope this helps,
    Avrom

  • Implementing Security For ADF Pages when integrated with Oracle APPS

    Hi,
    Can anyone please let me know the solution to the below problem ?
    I have an ADF application that is deployed on a weblogic server. An URL is generated to access the ADF Pages.
    I have created one more simple jsp (Launch.jsp) which redirects to this URL on page load.
    I am using Oracle APPS where:
    ->I registered a form function referring to Launch.jsp
    ->I am referring form function in a responsibility , attaching that to a menu
    ->When the valid oracle user logs in, I am sending all oracle apps environment variables (User id , Responsibility id, application id ) for that session
    What my issue is :
    ->The URL along with the parameters that I am sending from the Launch.jsp to the ADF Page is visible to the user. So, even if the Oracle APPS user has not logged in, anybody who knows the URL can access the ADF Pages.
    ->So, Is there any way to implement the security so as, even if anyone knows the URL of the ADF Page cannot access the ADF Pages without the valid user being logged-in through the Oracle APPS.
    I am using Jdeveloper 11g.
    Please let me know if you need anymore details.
    Thanks in advance,
    Kavitha

    Please help me out if anyone has a solution to this problem.
    Thanks,
    Kavitha

  • Implementing Singleton Pattern in ESB

    How do I go about implementing a singleton pattern within the ESB. Example usage would be for a cache. Prior to making an expensive service call I want to make sure that the data does not already exist within the cache.

    Have a look at metalink note 746108.1
    cheers
    James

  • Implementing Singletons in a cluster

    Hi all,
    I have the following question: is it possible to implement a Singleton in a EJB
    cluster? What about using a Stateless Session Bean with max-cache setting to 1
    ?(for container that support it). This way the container will create a single
    instance and serialize access to it....what do you think about it??
    Francesco

    Hello,
    I recalled this time-ago posting. I'd like to
    expand it a bit.
    bind a remote object to a jndi entry.
    That won't work with Weblogic ... it is possible to end up >with two singletonsdue to how WL JNDI works.
    Why binding a remote object in JNDI tree will end up with
    more instance of the object? Pardon my un-experience with clustering but I thought
    WL replicates JNDI
    tree between instances in the cluster....why other instance
    of the cluster don't get the same replica-object?
    A further issue: are there any problems with using a static field in an EJB that's
    in a cluster?
    Thanks a lot
    Francesco
    "Cameron Purdy" <[email protected]> wrote:
    That won't work with Weblogic ... it is possible to end up with two
    singletons due to how WL JNDI works.
    Peace,.
    Cameron Purdy
    Tangosol, Inc.
    Clustering Weblogic? You're either using Coherence, or you should be!
    Download a Tangosol Coherence eval today at http://www.tangosol.com/
    "tony pan" <[email protected]> wrote in message
    news:3cab973a$[email protected]..
    If you really want to do it, bind a remote object to a jndi entry.ServerSide has
    an example. But be sure it is really what you want.
    "Cameron Purdy" <[email protected]> wrote:
    What are you trying to accomplish with a singleton in the cluster?
    Peace,
    Cameron Purdy
    Tangosol, Inc.
    Clustering Weblogic? You're either using Coherence, or you should
    be!
    Download a Tangosol Coherence eval today at http://www.tangosol.com/
    "Francesco" <[email protected]> wrote in message
    news:[email protected]..
    Hi all,
    I have the following question: is it possible to implement a Singletonin
    a EJB
    cluster? What about using a Stateless Session Bean with max-cache
    setting
    to 1
    ?(for container that support it). This way the container will createa
    single
    instance and serialize access to it....what do you think about it??
    Francesco

  • Issue implementing PhaseListner in ADF

    Hi Friends,
    By referring the solution to create phaselistner in ADF at how we can create phaselistener...... plz help me I created listner class and added the entry in faces-config.xml. I restrted the weblogic server after modifying the xml. However, it is not working for me. Could someone suggest what I am missing here?
    RequestListner .java
    package com.bmc.crms.listner;
    import javax.faces.event.PhaseEvent;
    import javax.faces.event.PhaseId;
    import javax.faces.event.PhaseListener;
    public class RequestListner implements PhaseListener{
    @SuppressWarnings("compatibility:-6115882569671806271")
    private static final long serialVersionUID = -3616287763993951473L;
    * @param phaseEvent
    public void afterPhase( PhaseEvent phaseEvent) {  
    System.out.println("++++++++ afterPhase ++++++++ " );
    public void beforePhase(PhaseEvent phaseEvent){  
    System.out.println("++++++++ beforePhase ++++++++ " );
    public PhaseId getPhaseId()
    return PhaseId.RESTORE_VIEW;
    faces-config.xml entry:
    <lifecycle>
    <phase-listener>com.bmc.crms.listner.RequestListner</phase-listener>
    </lifecycle>

    After adding the Phase listner I get the following error in the diagnosis file.
    My application has one login page which creates task going thru the authentication which was working fine. I am now trying to implement the Listner through which I want to get the roles for the user.
    After adding the listner something got broken. The login page is taking me to the same page after entering the username /password. I am using JDev 11.1.1.4.0 and weblogic 10.3
    [ERROR] [] [org.apache.myfaces.trinidadinternal.config.GlobalConfiguratorImpl] [tid: [ACTIVE].ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: afulamba] [ecid: 004cBC2z7Ca3r2k6wzFg6G0007kG000Cil,0:1] [APP: worklistapp] [URI: /integration/worklistapp/faces/home.jspx] [[
    oracle.adf.controller.ControllerException: ADFC-00025: The ADF controller has not been successfully initalized.
         at oracle.adfinternal.controller.util.Utils.createAndLogControllerException(Utils.java:208)
         at oracle.adfinternal.controller.application.AdfcAppInitializer.initialize(AdfcAppInitializer.java:92)
         at oracle.adfinternal.controller.state.ControllerState.<init>(ControllerState.java:166)
         at oracle.adfinternal.controller.state.ControllerState.initializeRequest(ControllerState.java:783)
         at oracle.adfinternal.controller.state.ControllerState.initializeRequest(ControllerState.java:754)
         at oracle.adfinternal.controller.application.AdfcConfigurator.beginRequest(AdfcConfigurator.java:50)
         at org.apache.myfaces.trinidadinternal.config.GlobalConfiguratorImpl._startConfiguratorServiceRequest(GlobalConfiguratorImpl.java:562)
         at org.apache.myfaces.trinidadinternal.config.GlobalConfiguratorImpl.beginRequest(GlobalConfiguratorImpl.java:212)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:155)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:175)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         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:136)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         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

  • Implementing menus in ADF

    Hello,
    i want to implement an application menu using adf. i use a menubar, commandmenuitems and a menulist.
    what i want is, that when clicking on a "item" on the menubar, a list of possible actions should appear.
    for example: i click on "edit" and then the list "cut,copy,paste" should appear.
    how can i do this using adf?
    greetings
    sascha

    Thanks for the suggestion of placing in managed bean at application level.
    If the object is updatable, how can we prevent multiple users from updating at the same time?
    thanks

  • Serializing object of class implementing Singleton Pattern

    hi ,
    if i've a object of a singleton pattern based class and i seriailize that and when i'm desrializing that, i 'll get the object back, but on calling getInstance() method for my singleton class, it will agian call constructor because for the class's static object reference is null, i need to avoid this, for this i've written a setInstance method, which sets the Singleton class's static refernce to the object i desialized, which is fine, but it defeats the singleton pattern
    can anybody suggest me some other way of achieving this...

    If you are trying to deserialize a Singleton implement the Object readResolve() method.
    http://java.sun.com/javase/6/docs/platform/serialization/spec/input.html#5903
    ~Ryan

  • How to implement singleton service if i m using only jar and war component

    hello,
    in my application i m using only jar and war component .
    as i m not using EAR for deployment so i dont have weblogic-application.xml file.
    so in this case how i implement weblogic singleton service .and how to call active method

    From the documentation:
    After you have created a singleton service class using the SingletonService interface, you must define it as a singleton service within WebLogic Server. This singleton service object contains the following information:
    The path to the class to load as the singleton service.
    The preferred server and other candidate servers for the singleton service.
    The following excerpt from the cluster element of config.xml shows how a singleton service is defined:
    <singleton-service>
    <name>SingletonTestServiceName</name>
    <user-preferred-server>myManaged1</user-preferred-server>
    <class-name>mycompany.myprogram.subpackage.SingletonTestServiceImpl</class-name>
    <cluster>myCluster</cluster>
    </singleton-service>
    Note that the config.xml is located in the <domain-home>/config directory

  • How to implement ajax at ADF table column or ADF table column button.

    I want to use ajax in table column selection. I have two table. One is master table and second one is detailed table. I have requirement to click master table column and display data in detail table column against the master table column.
    let assume i have two tables 1.
    <af:form id="f1">
    <af:panelSplitter id="ps1" orientation="vertical">
    <f:facet name="first">
    <af:table value="#{radionBean.generatedData}" var="item" columnSelection="single" rowBandingInterval="0"
    id="tableData">
    <af:column sortable="false" selected="true" headerText="Ticket No" align="start" id="c1">
    <af:outputText value="#{item.ticketno}" id="ot1"/>
    </af:column>
    <af:column sortable="false" headerText="Requestor" align="start" id="c2">
    <af:outputText value="#{item.requestor}" id="ot2"/>
    </af:column>
    <af:commandButton text="More" id="cb1" action="#{radionBean.myrow}">
    <f:ajax execute="@this" render=":f1:detailTableData"/>
    <f:setPropertyActionListener target="#{radionBean.currentrow}" value="#{item}"/>
    </af:commandButton>
    </af:column>
    </af:table>
    </f:facet>
    Second table
    <f:facet name="second">
    <af:table value="#{radionBean.detailData}" var="itemdet" rowBandingInterval="0"
    id="detailTableData">
    <af:column sortable="false" headerText="Ticket No" align="start" id="c21">
    <af:outputText value="#{itemdet.ticketno}" id="ot21"/>
    </af:column>
    <af:column sortable="false" headerText="Date" align="start" id="c22">
    <af:outputText value="#{itemdet.date}" id="ot22"/>
    </af:column>
    </af:table>
    </f:facet>
    </af:panelSplitter>
    </af:form>
    The above is my two table when i run the program i have this exception
    <UIXEditableValue> <_isBeanValidationAvailable> A Bean Validation provider is not present, therefore bean validation is disabled
    <FaceletViewHandlingStrategy> <handleRenderException> Error Rendering View[untitled1.jsf]
    java.lang.IllegalArgumentException
         at org.apache.myfaces.trinidad.component.UIXComponentBase.findComponent(UIXComponentBase.java:708)
         at com.sun.faces.renderkit.html_basic.AjaxBehaviorRenderer.getResolvedId(AjaxBehaviorRenderer.java:279)
         at com.sun.faces.renderkit.html_basic.AjaxBehaviorRenderer.appendIds(AjaxBehaviorRenderer.java:269)
         at com.sun.faces.renderkit.html_basic.AjaxBehaviorRenderer.buildAjaxCommand(AjaxBehaviorRenderer.java:214)
         at com.sun.faces.renderkit.html_basic.AjaxBehaviorRenderer.getScript(AjaxBehaviorRenderer.java:86)
         at javax.faces.component.behavior.ClientBehaviorBase.getScript(ClientBehaviorBase.java:103)
         at oracle.adf.view.rich.render.RichRenderer._encodeClientBehaviors(RichRenderer.java:3740)
         at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1409)
         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:1659)
         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:1659)
         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._renderSingleDataBlock(TableRenderer.java:2433)
         at oracle.adfinternal.view.faces.renderkit.rich.TableRenderer._handleDataFetch(TableRenderer.java:1634)
         at oracle.adfinternal.view.faces.renderkit.rich.TableRenderer.encodeAll(TableRenderer.java:560)
         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:1659)
         at oracle.adfinternal.view.faces.util.rich.InvokeOnComponentUtils$EncodeChildVisitCallback.visit(InvokeOnComponentUtils.java:116)
         at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:531)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:354)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer._visitFacetAsStretched(PanelSplitterRenderer.java:393)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer._visitFacet(PanelSplitterRenderer.java:371)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelSplitterRenderer.visitChildrenForEncodingImpl(PanelSplitterRenderer.java:338)
         at oracle.adf.view.rich.render.RichRenderer.visitChildrenForEncoding(RichRenderer.java:2393)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:410)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:695)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:558)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:354)
         at oracle.adfinternal.view.faces.renderkit.rich.DecorativeBoxRenderer.visitChildrenForEncodingImpl(DecorativeBoxRenderer.java:214)
         at oracle.adf.view.rich.render.RichRenderer.visitChildrenForEncoding(RichRenderer.java:2393)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:410)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:695)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:558)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:354)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._visitFacetAsStretched(PanelStretchLayoutRenderer.java:856)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._visitFacet(PanelStretchLayoutRenderer.java:834)
         at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.visitChildrenForEncodingImpl(PanelStretchLayoutRenderer.java:793)
         at oracle.adf.view.rich.render.RichRenderer.visitChildrenForEncoding(RichRenderer.java:2404)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:410)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:695)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:558)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:354)
         at org.apache.myfaces.trinidad.render.CoreRenderer.visitChildrenForEncoding(CoreRenderer.java:228)
         at oracle.adf.view.rich.render.RichRenderer.visitChildrenForEncodingImpl(RichRenderer.java:2421)
         at oracle.adf.view.rich.render.RichRenderer.visitChildrenForEncoding(RichRenderer.java:2404)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:410)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:695)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:558)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:354)
         at org.apache.myfaces.trinidad.render.CoreRenderer.visitChildrenForEncoding(CoreRenderer.java:228)
         at oracle.adf.view.rich.render.RichRenderer.visitChildrenForEncodingImpl(RichRenderer.java:2421)
         at oracle.adf.view.rich.render.RichRenderer.visitChildrenForEncoding(RichRenderer.java:2404)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:410)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:695)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:558)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:354)
         at org.apache.myfaces.trinidad.component.UIXDocument.visitTree(UIXDocument.java:82)
         at javax.faces.component.UIComponent.visitTree(UIComponent.java:1496)
         at org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:487)
         at oracle.adfinternal.view.faces.util.rich.InvokeOnComponentUtils.renderChild(InvokeOnComponentUtils.java:42)
         at oracle.adfinternal.view.faces.streaming.StreamingDataManager._pprComponent(StreamingDataManager.java:756)
         at oracle.adfinternal.view.faces.streaming.StreamingDataManager.execute(StreamingDataManager.java:525)
         at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer._encodeStreamingResponse(DocumentRenderer.java:3713)
         at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer.encodeAll(DocumentRenderer.java:1475)
         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:1659)
         at oracle.adfinternal.view.faces.context.PartialViewContextImpl._processRender(PartialViewContextImpl.java:321)
         at oracle.adfinternal.view.faces.context.PartialViewContextImpl.processPartial(PartialViewContextImpl.java:152)
         at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:974)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1652)
         at oracle.adfinternal.view.faces.component.AdfViewRoot.encodeAll(AdfViewRoot.java:91)
         at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:399)
         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:1027)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:334)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:232)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
         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:122)
         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:111)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         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:136)
         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)
    Please reply this.......
    THANK YOU IN AN ADVANCE
    Regards
    Muhammad Khurram
    Edited by: 912134 on Feb 3, 2012 4:28 AM

    I don't think you need the f:ajax tag - you should be able to do the synchronization between the tables with the built-in partial page refresh functionality.
    Just define the partialTrigger property of the second table to point to the firsttable.
    http://docs.oracle.com/cd/E16162_01/web.1112/e16181/af_ppr.htm#BGBEGIDF

  • Implementing internationalization in ADF

    hi ,
    is there any tutoriel to implmente intenationalisation in oracle adf
    my jdev version 11 release 2
    thanks

    I don't think there is a tutorial, but the FOD demo has a section about it and you can read more here:
    http://docs.oracle.com/cd/E16162_01/web.1112/e16181/af_global.htm#CHDGCAFI
    and here:
    http://docs.oracle.com/cd/E16162_01/web.1112/e16182/bcentities.htm#BABJACFB

  • How to implement an audit system to track ADF applications DML activity?

    We have implemented a complete audit system for one of our databases in order to keep history for every table and every value that has been modified.
    The solution that we currently have can be split into two discrete parts:
    1. Keeping a record of all connections to the db account
    This is achieved via a table ‘user_sessions’ into which we record data for every session in the database with the help of on-logon and on-logoff triggers and some PL/SQL procedures:
    Column name        |  Explanation
    -------------------|-------------------------------------------
    US_ID              | PK, based on a sequence
    SESSION_ID         | sys_context('USERENV' ,'SESSIONID')  
    USER_NAME          | sys_context('USERENV' ,'OS_USER')
    LOGON_TIME         | when the on-logon trigger fires
    LOGOFF_TIME        | when the on-logoff trigger fires
    USER_SCHEMA        | sys_context('USERENV' ,'SESSION_USER')
    IP_ADDRESS         | sys_context('USERENV' ,'IP_ADDRESS')
    us_id |session_id |user_name|user_sschema|ip_address|logon_time               |logoff_time     
    560066|8498062       |BOB      |ABD         |1.1.1.2   |14-SEP-06 03.51.52.000000|14-SEP-06 03.52.30.000000
    560065|8498061       |ALICE    |ABC         |1.1.1.1   |14-SEP-06 02.45.31.000000|14-SEP-06 04.22.43.0000002. Keeping the history of every change of data made by a given user
    For every table in the account there is a corresponding history table with all of the columns of the original table plus columns to denote the type of the operation (Insert, Delete, Update), start and end time of validity for this record (createtime, retiretime) and us_id (which points to the user_sessions table).
    The original table has triggers, which fire if there is an insert, update or delete and they insert the data into the corresponding history table. For every record inserted into a history table the us_id taken from the user_sessions table is recorded as well, allowing us to determine who has modified what data via the combination of these two tables.
    Below is an example of a table TASKS, the history related triggers and the history table TASKS_HIST.
    At the moment we are developing new applications by using ADF. Since there is an Application Module Pool and Database Connection Pool implemented for the ADF, one connection to the database could be used by several users at different moments of time. In that case the history records will point to a database session logged into the user_sessions table, but we will not know who actually modified the data.
    Could you, please, give us a suggestion, how we can know at any moment of time who (which of our users currently making use of an ADF application) is using a given database connection?
    By way of an example of the problem we are facing, here is how we solved the same problem posed by the use of Oracle Forms applications.
    When the user starts to work with a given Forms application, user_sessions table would attempt to record the relevant information about he user, but since the db session was created by the application server, would in actual fact record the username and ip address of the application server itself.
    The problem was easy to solve due to the fact that there is no connection pooling and when a user opens their browser to work with Forms applications, a db connection is opened for the duration of their session (until they close their browser window).
    In that case, the moment when the user is authenticated (they log in), there is a PL/SQL procedure called from the login Form, which updates the record in the user_sessions table with the real login name and ip address of the user.
    Example of a table and its ‘shadow’ history table
    CREATE TABLE TASKS (
         TASKNAME     VARCHAR2(40),
         DESCRIPTION  VARCHAR2(80)
    ALTER TABLE TASKS ADD (
         CONSTRAINT TASKS_PK PRIMARY KEY (TASKNAME));
    CREATE OR REPLACE TRIGGER TASKS_HISTSTMP
    BEFORE INSERT OR UPDATE OR DELETE ON TASKS
       BEGIN
         HISTORY.SET_OPERATION_TIME('TASKS');
       EXCEPTION
         WHEN OTHERS THEN
           ERROR.REPORT_AND_GO;
    END TASKS_HISTSTMP;
    CREATE OR REPLACE TRIGGER TASKS_WHIST
      AFTER INSERT OR UPDATE OR DELETE ON TASKS
      FOR EACH ROW
      BEGIN
    CASE
          WHEN INSERTING THEN
            UPDATE TASKS_HIST
               SET retiretime = HISTORY.GET_OPERATION_TIME
             WHERE createtime = (SELECT MAX(createtime)
                                   FROM TASKS_HIST
                                  WHERE retiretime IS NULL AND TASKNAME=:NEW.TASKNAME)
               AND retiretime IS NULL AND TASKNAME=:NEW.TASKNAME;
            INSERT INTO TASKS_HIST (TASKNAME      ,DESCRIPTION      ,optype
                                    ,createtime                    
                                    ,us_id)
                   VALUES          (:NEW.TASKNAME ,:NEW.DESCRIPTION ,'I'
                                    ,HISTORY.GET_OPERATION_TIME    
                                    ,USER_SESSION.GET_USER_SESSIONS_ID);
          WHEN UPDATING THEN
            UPDATE TASKS_HIST
               SET retiretime = HISTORY.GET_OPERATION_TIME
             WHERE createtime = (SELECT MAX(createtime)
                                   FROM TASKS_HIST
                                  WHERE TASKNAME=:OLD.TASKNAME) 
               AND TASKNAME=:OLD.TASKNAME;
            INSERT INTO TASKS_HIST (TASKNAME      ,DESCRIPTION      ,optype
                                    ,createtime
                                    ,us_id)
                   VALUES          (:NEW.TASKNAME ,:NEW.DESCRIPTION ,'U'
                                    ,HISTORY.GET_OPERATION_TIME
                                    ,USER_SESSION.GET_USER_SESSIONS_ID);
          ELSE
            UPDATE TASKS_HIST
               SET retiretime = HISTORY.GET_OPERATION_TIME
             WHERE createtime = (SELECT MAX(createtime)
                                   FROM TASKS_HIST
                                  WHERE TASKNAME=:OLD.TASKNAME) 
               AND TASKNAME=:OLD.TASKNAME;
            INSERT INTO TASKS_HIST (TASKNAME      ,DESCRIPTION      ,optype
                                    ,createtime
                                    ,us_id)
                   VALUES          (:OLD.TASKNAME ,:OLD.DESCRIPTION ,'D'
                                    ,HISTORY.GET_OPERATION_TIME
                                    ,USER_SESSION.GET_USER_SESSIONS_ID);
        END CASE;
      EXCEPTION
        WHEN OTHERS THEN
          ERROR.REPORT_AND_GO;
    END TASKS_WHIST;
    CREATE TABLE TASKS_HIST (
         TASKNAME       VARCHAR2(40),
         DESCRIPTION    VARCHAR2(80),
         OPTYPE         VARCHAR2(1),
         CREATETIME     TIMESTAMP(6),
         RETIRETIME     TIMESTAMP(6),
         US_ID          NUMBER
    ALTER TABLE TASKS_HIST ADD (
         CONSTRAINT TASKS_HIST_PK PRIMARY KEY (TASKNAME, CREATETIME)
           );

    Frank,
    Thanks for your reply.
    I checked the site that you mentioned.
    I try the sample “demo with bundle. The sample worked.
    But it needed to start separately with the application.
    I do not know how to build a help system with the existed web application developed with Jdeveloper (It has two projects: model and user-view-control. It is deployed on Oracle Application server).
    Could you help me step by step to build the help system?

  • How to implement hierarchical structure of managers and reportees using jdeveloper adf

    I want to display hierarchical structure(which can be expanded and compressed) with 3 columns(Employeeid, fist Name,lastname) of managers and his reportees on selecting a top level manager.
    In this i'm going to use programmatic view objects.
    I have employees table.
    Here is my detailed requirement:
    On selecting a user from drop down list, i want to display the list of users reporting to him.
    From the displayed list on selecting a manager, list of users reporting to him has to be displayed in a tree format with the correspoding just being listed below the current selected manager
    Example :
    Top Manger  has been selected from dropdown and clicked submit.
    Output(a table as mentioned below):
    Manager1
    Manager2
    NonManager1
    Manger 3
    On clicking manager1,
    output:
    Manger 1
      Manger11
      Manasger12
      Nonmanager11
    Manger 2
    NonManger1
    Manger3
    on clicking manager1 again, tree has to be compressed and the output has to be just the same as first output.
    Please help me on this by sharing information or any references on how can i achieve this implementation using Jdeveloper adf concepts.
    Will be waiting for the inputs.
    Thank You,
    Dev

    Obviously, you can only display one picture.  So then the question becomes which picture to show.  Therefore, you will have to create some sort of preference of one pattern over another.
    I would use a FOR loop so that you can loop through your available patters and their possible results.  Use the Conditional Terminal on the FOR loop so that you can stop the loop on the first match.  Then you just wire up the selected value for the ring outside of the loop.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • 11g ADF TaskFlow Exception Handling in BPM

    Hi Guys
    BPM 11g
    I have a human task that is implemented as an ADF task flow. I would like to be able to throw an exception from the ADF application and have it handled by the BPM process, does anyone know if this is possible or how I would do that?
    At the moment I have an ADF error page - I could return an "error" outcome to the process from that but an error is an error and it feels right to show that in the process instead of a normal outcome.
    anyone else worked through this?
    cheers,
    Steve

    help yourself with this thread - Re: Exception Handling
    it should answer your question

Maybe you are looking for