Setting initial focus amidst multiple templates, task flows, and fragments.

Hi Guys,
Using JDev 11.1.1.4.
I've got page fragments for which I'd like to set the initial focus. The issue is that oftentimes these .jsff pages are nested within page templates, train templates, dynamic regions, etc. As far as I know, the initial focus for a component is set on the document. The trick is finding out what all the prefixes are before the .jsff component.
pt1:dynamicRegion:3:pt1:t1:0:it1Is there any easy way to figure out all the prefixes before this :it1, which can oftentimes be dramatically different?
Would the easiest way be to set the initial focus to say "defaultFocus" and then have every .jsff have a component id called "defaultFocus"? Feels like cheating, but any other way I can think of seems way too complicated.
Thanks,
Will

The method we use is mainly programmed by: Marianne Horsch.
So again, 1 page:
<af:document ...  initialFocusId="#{backingBeanScope.bolsysPageBean.initialFocus}">
<af:form .... defaultCommand="#{backingBeanScope.bolsysPageBean.defaultCommand}">Within the body of this page a dynamic region is defined, this is all that is ever refreshed.
Bean, not all logging etc removed:
  private static final String DEFAULT_COMMAND_ATTRIBUTE = "defaultCommand";
  private static final String INITIAL_FOCUS_ATTRIBUTE = "initialFocus";
  private String defaultCommand;
  private String initialFocus;
  public BolsysPageBean() {
    super();
    initPage();
  public final void initPage() {
    List<UIComponent> childrenList = getPageChildrenList();
    if (!childrenList.isEmpty()) {
      UIComponent defaultCommandComponent =
        UIComponentUtils.findComponentWithAttribute(childrenList, DEFAULT_COMMAND_ATTRIBUTE);
      if (defaultCommandComponent != null) {
        defaultCommand = defaultCommandComponent.getClientId(FacesContext.getCurrentInstance());
      UIComponent initialFocusComponent =
        UIComponentUtils.findComponentWithAttribute(childrenList, INITIAL_FOCUS_ATTRIBUTE);
      if (initialFocusComponent != null) {
        initialFocus = initialFocusComponent.getClientId(FacesContext.getCurrentInstance());
  private List<UIComponent> getPageChildrenList() {
    UIViewRoot root = FacesContext.getCurrentInstance().getViewRoot();
    if (FacesContext.getCurrentInstance() != null && FacesContext.getCurrentInstance().getViewRoot() != null) {
      return UIComponentUtils.getAllChildComponents(root);
    return Collections.<UIComponent>emptyList();
  public String getDefaultCommand() {
    return defaultCommand;
  public String getInitialFocus() {
    return initialFocus;
  }Util code:
  public static List<UIComponent> getAllChildComponents(UIComponent root) {
    List<UIComponent> list = new ArrayList<UIComponent>();
    if (root.getFacetCount() > 0) {
      Map<String, UIComponent> facetMap = root.getFacets();
      for (Map.Entry<String, UIComponent> entry : facetMap.entrySet()) {
        UIComponent facetComponent = entry.getValue();
        list.add(facetComponent);
        if (facetComponent.getChildCount() > 0 || facetComponent.getFacetCount() > 0) {
          list.addAll(getAllChildComponents(facetComponent));
    list.addAll(getOwnChildren(root));
    return list;
  private static List<UIComponent> getOwnChildren(UIComponent root) {
    List<UIComponent> list = new ArrayList<UIComponent>();
    if (root.getChildCount() > 0) {
      for (UIComponent child : root.getChildren()) {
        list.add(child);
        if (child.getChildCount() > 0 || child.getFacetCount() > 0) {
          list.addAll(getAllChildComponents(child));
    return list;
  }  The dynamic region is based on a backing bean as well.
As I said before, when you want it right use beans (:
-Anton

Similar Messages

  • What is difference between ADF Task Flow and Faces-Config - when delpoy ?

    What is difference between ADF Task Flow and Faces-Config? When I create navigation between pages with ADF task flow then the navigation don't work when I deploy my application to Weblogic 10.3. When I use default server then navigation works fine. With Faces_config in both situations all works ok - on Stanalone server and default.
    Where is the problem?
    Best regards!

    Shay, I don't use both faces-config and adf task flow! When I failed with task flow I tried faces-config.
    I have active on my weblogic - adf.oracle.domain(1.0,11.1.1.0.0). This is the right ADF? If yes then where is the problem?
    Best regards!

  • Music and Video on Nas in folders but how do i set up itunes on multiple computers to see and use these files and create libraries?

    Music and Video on Nas in folders but how do i set up itunes on multiple computers to see and use these files and create libraries?
    So i have had a itunes set up on my old PC, bought a NAS and copied the folders over to the NAS, i did this incorrectly and so then even when i told the old PC to use that folder it saw all the songs but wasnt able to play the songs as it was looking in the incorrect place.
    So now i want my Mac as well as my PC and others to all use the music, videos etc on the NAS they are in itunes friendly folders (as they were compiled this way by the itunes on the old PC.
    When i tell the mac to use the itunes library.itl file it sees the song list (about 100gb) but cant see any songs, so i have removed this file to another location for now with the hope to set up a new file and then get it to see the songs on the folder from the NAS.
    Can someone tell me how to do this for all the Mac's and PC's on my network as i really want one master library that all use and add too.
    Thanks for your help in advance.

    I have the same question but I am using two pc's

  • How to access and set the object attributes in a task flow?

    I have created a web service data control which has an operation having input as payload object. This payload object has two attributes min and max. I am calling a task flow in a dynamic region in which I want to display result of this operation for which i have to set the values for min and max. I want to set these values when I click the taskflow link. How to achieve this? I am new to adf.

    Hi Arun,
    Thanks for your reply.
    I have tried passing parameter to a task flow, but i cannot set the action to a task flow call because it already has action for a method in a dynamic region which renders the task flow at runtime. How do i set action to task flow call link? Also once i get the parameters into the page flow scope variables, i want to pass those to one of my data control operation which displays the result in that taskflow.(i dont want to create parameter form for this operation).

  • Can I reference page-flow bean from a bounded-task-flow page-fragment?

    I have a view activity implemented as page fragment in my bounded task flow.
    I declare a page-flow scope managed-bean in adfc-config.xml to do some initialization for the bounded-task-flow:
    <managed-bean id="__23">
    <managed-bean-name id="__22">TaskFlowBean</managed-bean-name>
    <managed-bean-class id="__21">view.backing.TaskFlowBackingBean</managed-bean-class>
    <managed-bean-scope id="__20">pageFlow</managed-bean-scope>
    </managed-bean>
    In my bounded task flow, the default activity is a method-call activity which call the page-flow bean method
    <method-call id="initFlow">
    <method>#{pageFlowScope.TaskFlowBean.initFlow}</method>
    <outcome id="__27">
    <fixed-outcome>showPanel</fixed-outcome>
    </outcome>
    </method-call>
    But JDeveloper (11.1.1.2) show a warning "Refereneed pageFlowScope not found" at the "Diagram" view of the flow definition.
    The fixed outcome of the default activity is to render a page-fragment which also reference the page-flow scope bean method getPanelTitle():
    <af:panelBox text="#{pageFlowScope.TaskFlowBean.panelTitle}" id="pb1">
    <f:facet name="toolbar"/>
    </af:panelBox>
    At runtime, the page fragment was rendered properly except the panel box title is missing. No other error is reported
    When I debugged the application, the bean methods initFlow() and getPanelTitle() didn't get call as the program didn't stop at the breakpoint set in the bean methods.
    The page fragment was rendered properly except the panel box title is missing.
    When I change the scope to backing bean, both initFlow() and getPanelTitle() get called but under a different backing bean.
    As the bean attributes set by initFlow() were not no longer set when getPanelTitle() was invoked even though the methods were invoked in the correct order.
    Why can't I use a page-flow scope bean within the bounded task flow?
    On further debugging, I noticed the bean was not created when it is set to be page-flow scope. I put a debug message in the constructor... never get called.
    When should a page-flow scope bean be created to be accessible on entry to a bounded task flow?
    Edited by: Pricilla on Apr 29, 2010 3:16 PM

    Please check the scope of the pageFlow from the manual.
    pageFlowScope is only available for the pages/views in that taskflow and not in the included taskflows.

  • 11g TP2 ADF Task Flows and Transaction Management

    I'm wondering how ADF Task Flow Transaction Management works vis-a-vis database sessions and using stored procedure calls in an environment with connection pooling. I haven't written the code yet but am looking for a better understanding of how it works before I try.
    Example:
    I create a bounded adf task flow. I set the "transaction" property to "new-transaction" and the "data control scope" to "isolated".
    As the task flow is running, the user clicks buttons that navigate from page to page in the flow. Each button click posts the page back to the app server. On the app server a backing bean method in each page calls a stored procedure in a database package to modify some values in one or more tables in the database. The procedure does not commit these changes.
    Each time a backing bean makes a stored procedure call will it be in the same database session? Or will connection pooling possibly return a different database connection and therefore a different database session?
    If the transaction management feature of the adf task flows guarantees me that I will always be in the same database session then I don't have to write any extra code to make this work. Will it do that or not?

    I don't know if it is documented in the adf documentation currently available for 11g TP2 but what you ask for is a normal transaction management with connection pooling and i can't imagine it is not implemented in ADF BC layer like it is in JPA or other persistence layer.
    A transaction will always be executed in the same session. Normally your web session will stay in the same session even you start more than one transaction. You don't have to write any code to manage the session pooling. It is a good practices to customize it at the persistence layer during installation depending on your infrastructure.
    Take a look into Fusion Developer Guide ... i'm sure you will find some better explanations about this.

  • ADF  task-flow and transactions

    Hi All,
    I have created a web application using ADF and JDeveloper 11.1.1.4. The ADF web application has two pages 'Search' and 'Edit'. The 'Search' and 'Edit' are page fragments. I have two bounded task flows 'search-flow.xml and 'edit-flow.xml'. The search and edit functionality has been created as dynamic regions by dragging the task-flows onto the JSF page.
    The bounded search-flow.xml has page flow from search ----> edit(Parent Action component)
    The bounded edit-flow.xml has page flow as *-->edit----> search(Parent Action component)
    User comes from login page to the search page. On search page users can choose to search for records and edit individual searched records or create a new record using 'CreateInsert' button. Either way users end up on the edit page.
    On the edit page, users see a form to fill or modify. They have the choice to navigate back to search page using 'Search' button or commit changed record using 'Save' button or create new record using 'Create' button
    The application is functioning 90% as expected, only problem is the transaction management part if the user does not care to save each time the edit is made.
    Say for instance, on search page user press ' CreateInsert' button which takes the user to edit page and then without saving the new record user presses 'Search' button which takes the user to search page and so repeated goes back and forth cycle.
    In such cases the transaction never ends, The primary key for each new record is retrieved from the DB sequence only on persisting to database. A place holder like negative integer is used for the primary key temporarily till new record is persisted to database.
    As per best practices, I am using the checkUncommittedDatabehavior which prompts the user when navigation is done away from the edit page i.e. without saving on pressing the 'Search' button on edit page. User can choose 'OK' or 'Cancel' which comes bundled with the ADF checkUncommittedDatabehavior property. Even after selecting OK the new record does not seems to be rollbacked (Issue 1).
    eg:, if the user performs the cycle(i.e navigating between search and edit pages without commit/save) 'n' times, new entity records are created with primary keys -1, -2, -3, -4 ........ so forth. As I said earlier a proper sequence number for the primary key is assigned only if a record is persisted to the database.
    Now on the 'n+1' cycle the user fills the records and clicks commit, it comes up with a error 'primary keys with nulls from previous uncommitted record (i.e; 1,2,3, .....n) creation.
    I guess the transaction management is not happening correctly and not completing during these cycles (1, 2...n) Note: I am not using 'Task Return' components in my bounded ADF task flows, just commit operation 'Save' button in edit page and checkUncommittedDatabehavior.
    Also, in search-flow.xml I have following configured under 'Behavior' tab Transaction ---> No Controller transaction and ' Share data controls with calling task flow checked
    in edit-flow.xml, these configurations are in place under 'Behavior' tab Transaction ---> Always begin new transaction and ' Share data controls with calling task flow checked and Critical checked and 'task flow rentry' as reentry-outcome dependant.
    Thanks
    Edited by: user5108636 on Oct 26, 2011 5:16 PM
    Edited by: user5108636 on Oct 26, 2011 5:24 PM

    Hi Frank,
    I checked the DB sequence is setup correctly. I have also modified the problem description above for better understanding.
    2. When users press OK, navigate to a commit method activity (just drag and drop the commit operation).
    -- When user presses OK, I need to rollback instead of commit to make users lose the unsaved work and controller should navigate to the search page. Here, the message panel with Cancel and OK is shown automatically with the <af:checkUncommittedDataBehavior/> property, I thought the framework will do the rollback for me. If I need to do rollback manually, how to do it, because I cannot see the JSF related source code for the <af:checkUncommittedDataBehavior/> dialog box. Please suggest what to do
    3. If they press cancel, have the return activity rolling back to the save point taken when the user entered the bounded task flow (edit task flow)
    -- If they press cancel, user stays on the same page, so I will leave future action to the user. This bit is working fine in my app.
    Thanks
    Edited by: user5108636 on Oct 26, 2011 5:23 PM

  • Composite Application with a Task Flow and form created manually

    Hi,
    I'm using Oracle SOA Suite 11G and i'm trying to create a task form for a human task without using the auto generate wizards and i'm having trouble getting the form to show in BPM worklist.
    I have followed instructions in the developers guide to create the form against the human task including the following
    27 Designing Task Forms for Human Tasks
    27.4.3 How To Create a Task Form Using the Complete Task with Payload Drop Handler
    27.8 Deploying a Composite Application with a Task Flow
    After i deploy and test, the task appears and works correctly in BPM worklist, but the form does not show. This is when i have the task form within a composite application or in a separate project. When i generate the form automatically using the wizards, this all works fine.
    Updated: Noticed that when i create the task form manually and deploy it does not create entries as per instructions
    20.3 Managing the URI of the Human Task Service Component Task Details Application
    I have the details in hwtaskflow.xml, but for some reason, they are not automatically created... It is annoying to have this created each time...
    Am i missing something? I don't see any errors in BPM worklist or on the server. Any advice would be appreciated.
    Thanks
    Edited by: user5535771 on Mar 12, 2010 5:01 PM

    Hi Duncan,
    Thanks for your reply.
    The later option of not using Query_Only would involve massive custmizations, as there are so many forms apart from the absence forms.
    There is just one taskflow that contains the person, assignment, Absence and SIT screen, how can we do like an standalone absence screen does not have tehe query only as Yes.
    Please let me know in case you dint get me i will mention my development steps in points.
    Many Thanks,
    Vineet

  • Bounded-Task-Flow Page Fragment Control Flow Help

    jDeveloper: 11.1.1.0.2
    I am having an issue trying to figure out the correct way to use control flow cases between a bounded-task-flow with page fragments and an unbounded-task-flow page. We have taken the approach in our application to have a few shell / container pages to host bounded-task-flows made up of page fragments to facilitate re-usability and to speed up development. There are 4 or 5 shell pages on the applications unbounded-task-flow. As of now, we have about 20 page fragments that are implemented as bounded-task-flows. These fragments don't do much now, meaning there is only a single fragment in each bounded-task-flow. The issue I am having is trying to invoke a control flow navigation action from one of the fragments to load a different shell page.
    For Example, shellPage1.jspx contains fragment-flow-1 as a region. In my adfc-config.xml I have shellPage1.jspx and shellPage2.jspx, with control flow cases "toShell1" and "toShell2" respectively connecting the two pages. I have a link's action bound to the "toShell2" within the fragment that makes up fragment-flow-1. When the application is run, shellPage1.jspx and its fragment are displayed. But clicking on the link in the fragment ("toShell2") does absolutely nothing. It does not navigate me to the shellPage2.jspx as expected. What am I doing wrong here or do not understand?
    If the fragment is included as a JSP include, and not a bounded task flow include, everything works as expected. This is not desirable as we then need to copy the fragment's pageDef into the shellPage's pageDef to get the DataControls to function.
    If the faces-config.xml is used instead, and a JSF navigation case is used, it will also work as expected. This is not desirable because we really don't want to be mixing adcf-config and faces-config.
    So I am really stumped here.... Thanks in advance!

    Hi there:
    In your case, the adfc-config.xml has the control flow case between shell pages. And the task-flow-N.xml or your-task-flow.xml for each page fragment by default doesn't inherit control flow case from their containing shell page. In your case, in the page fragment task-flow.xml, you should add a "Parent Action" to flow to shell page2 for example. The outcome of "Parent Action" would be "toShell2" if calling from ShellPage1 page fragment.
    Is this 'Correct' or 'Helpful' for you? Please mark it as so if it does.
    Good luck,
    Alex

  • Security using security profile option & task flow and nodes

    we are going to change our access levels based on the various users created in the system. can some 1 out there provide me with a good document that can assist me in doing this exercise correctly and to the best practice
    gurus appreciate if some one can help me as soon as possible!

    You can refer these documents
    Understanding and Using HRMS Security in Oracle HRMS [ID 394083.1]
    Taskflows in Oracle HRMS [ID 73515.1]
    But again these are generic document. you can share your question if you have any specific queries.
    Thanks

  • Captcha ADF task FLow

    Dears,
    i am using Captcha Code, make new Task flow and fragment to be deployed on webcenter spaces, the code working correctly when am using in JDeveloper and make Run from JDeveloper, but when i deploy it on webcenter spaces and call this Task Flow from webcenter spaces the image not appear(The image using Servlet).
    i am download the Captcha JAR from Oracle : http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html , Download Captcha an using it as Task Flow to deploy it on webcenter spaces, but as i told you when i Run this code from JDeveloper working correctly, but the problem when i deploy it on webcenter spaces the Servlet code with image not appear.
    Please Advise..
    Thanks

    M.A.N., please always mention the jdev version you are working on.
    Do you see any error or warning messages in hte server log?
    I don't think it's a adf or jdev problem as it runs OK using jdev. I more assume a configuration problem with webcenter spaces.
    Have you ask this on one of their forums (https://forums.oracle.com/forums/category.jspa?categoryID=196)?
    TImo

  • Deployed Captcha Code on webcenter spaces using customized Task Flow

    Dears,
    i am using Captcha Code, make new Task flow and fragment to be deployed on webcenter spaces, the code working correctly when am execute RUN from JDeveloper 11.1.1.4.0, but when i deploy it on webcenter spaces version 11.1.1.5 and call this Task Flow from webcenter spaces the image not appear(Actually its Servlet code).
    as mentioned on Oracle PDF (http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html ) -- > How-to use Captcha with ADF Faces and Oracle ADF
    add Servlet on web.xml, then make Managed Bean Code (add it into faces-config.xml) , then create new task flow and call the method that execute the Managed Bean from ADF Task Flow Page.
    1 - Servlet on web.xml :
    <servlet>
    <servlet-name>CaptchaServlet</servlet-name>
    <servlet-class>nl.captcha.servlet.SimpleCaptchaServlet</servlet-class>
    <init-param>
    <param-name>width</param-name>
    <param-value>250</param-value>
    </init-param>
    <init-param>
    <param-name>height</param-name>
    <param-value>75</param-value>
    </init-param>
    </servlet>
    <servlet-mapping>
    <servlet-name>CaptchaServlet</servlet-name>
    <url-pattern>/captchaservlet.jpg</url-pattern>
    </servlet-mapping>
    2 - Managed Bean :
    public void callMethod() {
    FacesContext fctx = FacesContext.getCurrentInstance();
    ExternalContext ectx = fctx.getExternalContext();
    HttpServletRequest request = (HttpServletRequest)ectx.getRequest();
    Captcha captcha = (Captcha)ectx.getSessionMap().get(Captcha.NAME);
    try {
    request.setCharacterEncoding("UTF-8");
    } catch (UnsupportedEncodingException e) {
    //bad luck - but ignore
    System.out.println("UTF not supported !");
    String answer = (String)ectx.getRequestMap().get("bestGuess");
    if (answer != null && captcha.isCorrect(answer)) {
    sendMail();
    SendMail_ToExternal();
    } else {
    fctx.addMessage(null,
    new FacesMessage(FacesMessage.SEVERITY_ERROR, "Please write the number shown in the Picture",
    null));
    i am download the Captcha JAR from Oracle : http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html , Download Captcha an using it as Task Flow to deploy it on webcenter spaces, but as i told you when i Run this code from JDeveloper working correctly, but the problem when i deploy it on webcenter spaces the Servlet code with image not appear. i wanna to know if servlet code working with deployed task flows on webcenter spaces or not ?
    Please Advise..
    Thanks

    Dear Bijesh Krishnadas,
    I did not add the servlet configuration to webcenter spaces yet, just add the Servlet to web.xml to ADF application, i will try to do the steps you are sent to me ? many thanks Bijesh Krishnadas

  • Including the unbounded task flow pages to a template content region

    I have a template with a left and content region.All the pages are linked through an unbounded task flow. On clicking on the left menu options I need to include the unbounded task flow views to the content region. Is there any way to accomplish this ?
    jsp:include is a way to do this ?. I need to change the pageview onclicking on the left menu .It should work like an iframe in html.That means somehow I need to invoke http://127.0.0.1:7101/RMEWebApps-PlsSuiteWeb-context-root/faces/test through the jsp include or using some other mechanism in the content region
    How can I do this ?
    Thanks
    Suneesh

    This is an integration project. We do have an application already using unbounded task flow.We have some other projects as well using regions and bounded task flows. We need to create a frame work so that we can navigate to different projects from the main project.
    What should be the best design approach for integration
    1) Import ADF lib jar files of other projects to main project.Create an unbounded task flow linking all unbounded task flows and create a menu out of that which will link to different projects in the main project
    2) Convert all unbounded task flows to bounded task flows and link the pages.Import ADF lib jar files of other projects to main project.Create a region in main project and dynamically change the region by refreshing it.
    Thanks
    Suneesh

  • Is it possible to add a JSFF to a page programmatically without Task Flows?

    My use case is this: My application does not use task flows. If a value returned from the database is 0, I am creating a UIComponent and adding it to a PanelGroup on a page. If the value returned is 1, I need a way to programatically add a JSFF to the page. So, that means I cannot define the JSFF on the page with a <jsp:include... />.
    The closest solution I have found so far is to use af:declarativeComponent, but when attempting to create this component via the ADF Faces API, I find that there is a method for getViewId, but not for setViewId, meaning I cannot add the JSFF to the declarativeComponent and in turn add the DC to the PanelGroup.
    Thanks.

    Frank,
    I stand corrected on utilizing a Task Flow. After some learning on my end, Task Flows and Regions appear to be a solution for my requirement.
    I created a dynamic task flow (jsff), dropped it on the jspx page to create a region and it executed successfully.
    Now that I know drag and drop works for this task flow, I am attempting to add the region to the page at runtime. Here is the code I am using:
    private void ProcessEmailUpdateFragment(String id, FlexContent fc) {
    RichRegion rr = new RichRegion();
    // this is the tag created via drag and drop: <af:region value="#{bindings.dynamicRegion1.regionModel}" id="r1"/>
    FacesContext facesContext = FacesContext.getCurrentInstance();
    ExpressionFactory elFactory = facesContext.getApplication().getExpressionFactory();
    ELContext elContext = facesContext.getELContext();
    ValueExpression valueExp = elFactory.createValueExpression(elContext, "#{bindings.taskflowdefinition1.regionModel}", Object.class);
    RegionModel model = (RegionModel)valueExp.getValue(elContext);
    rr.setRegionModel(model);
    rr.setId("r" + id);
    rr.setValue(model);
    FlexUIContainer.add(rr);
    }Here is the error I am receiving:
    <UIXRegion> <getRegionModel>
    java.lang.IllegalStateException: The "value" attribute on a region component with id "r0" was null or not specified thus its RegionModel is null. Now using an empty RegionModel instead.
         at oracle.adf.view.rich.component.fragment.UIXRegion.getRegionModel(UIXRegion.java:455)
         at oracle.adf.view.rich.component.fragment.UIXRegion._beginInterruptibleRegion(UIXRegion.java:682)
         at oracle.adf.view.rich.component.fragment.UIXRegion.encodeBegin(UIXRegion.java:279)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928)I do not see any references to this error anywhere online and was hoping you could provide a bit of guidance. Initially, I only was setting the RichRegion Id and RegionModel, then when I received the above error, I set the Value, with no change.
    Thanks,
    MattC
    UPDATE: The reason for the error is that the model object is null...looking into it now.
    Edited by: MattC on Jan 17, 2012 5:27 PM
    UPDATE: Copy/paste error. EL needed to be #{bindings.dynamicRegion1.regionModel}, not #{bindings.taskflowdefinition1.regionModel} (copied from example). Now I have encountered an additional error, which I believe may reveal I have reached a dead end:
    <PropertyKey> <saveValue> Unserializable value:oracle.adf.controller.internal.binding.DCTaskFlowBinding$InnerTaskFlowRegionModel@3694d537 for key:UINodePropertyKey[value,14]In this post from 3 years back, you wrote that a use case that resulted in this same error was not supported: insert a region programatically
    It appears this may still the case. Either way, I was hoping you would provide additional insight.
    Thanks.
    Edited by: MattC on Jan 17, 2012 5:49 PM
    I am running JDev 11.1.1.5
    Edited by: MattC on Jan 18, 2012 9:05 AM

  • How to navigate directly to a view in a task flow

    I have several feature requests that will require me to persist a page and navigate back to it at a later time. These features are things like Recent Items, Favorites, and Breadcrumbs.
    In our app we are using bounded task flows and page fragments.
    I have figured out how to get the view ID and task flow ID of the current page. I am doing this by using a task flow initializer and a region navigation listener. What I can't figure out is how to make use of these when the user wants to navigate to a particular view in a task flow. I can navigate to a task flow by replacing the taskFlowId on a dynamic region. However, I haven't figured out how to navigate to a view (other than the default) in a task flow.
    Am I on the right track here? If so, what should I try next? If not, can you suggest a better method for implementing these features?
    Thanks!!
    Mike

    Thanks for the reply. I tried your suggestion of redirecting to the view activity URL using the code below.
    ControllerContext controllerContext = ControllerContext.getInstance();
    String viewId = "RootFlow1/PageOne";
    String url = controllerContext.getGlobalViewActivityURL(viewId);
    System.out.println(url);
    FacesContext.getCurrentInstance().getExternalContext().redirect(url);
    the sysout prints the URL below
    /TestUIShell-ViewController-context-root/faces/RootFlow1/PageOne?_adf.ctrl-state=qlewpla4_41
    However, I get a 404, saying that it can't find the page. I tried modifying some of the flow settings to get it to work. I set the redirect property on the view to true and the URL Invoke visiblity on the flow to url-invoke-allowed, but I still get a 404. What am I missing?
    To give you more info about our app, we are using an outer page template to define the layout of the app (like the Fusion UIShell) and an inner page template to define the main area where pages will be rendered. Navigation is achieved by putting the main area flow in a dynamic region. When the user clicks a lnk, we swap out the task flow id on the region. Once they are in the region, navigation is normal ADF navigation within just that region.
    I read both of the threads that you referenced, but I don't see anything in there that I can use (maybe I'm missing it). Are there other ways to navigate to a view in a flow that I am missing?
    Thanks!!
    Mike

Maybe you are looking for