How to use task flow's transaction options with session's user data

Hi.
I have custom extension of ApplicationModuleImpl class:
package test.model
imports...
public class CustomAppModuleImpl extends ApplicationModuleImpl {
    public static final String SESSION_VAR = "MySessionVar";
    public CustomAppModuleImpl() {
        super();
    @Override
    protected void prepareSession(Session session) {
        super.prepareSession(session);
        System.out.println("######## " + this.getClass().getName() + ".prepareSession() called.  AM isRoot() = " + isRoot());
        Hashtable userData = session.getUserData();
        if (userData == null) {
            userData = new Hashtable();
        userData.put(SESSION_VAR, "Useless");
    @Override
    protected void create() {
        super.create();
        System.out.println("######## " + this.getClass().getName() + ".prepareSession() called.  AM isRoot() = " + isRoot());
}Inside userData I store some useful session-based values (here is just an example ;) ).
Within Model.jpr I defined that every Application Module I create must extends this CustomAppModuleImpl :
   <value n="oracle.jbo.extends.appModule" v="test.model.CustomAppModuleImpl"/>
...I have one AM with one view:
package test.model;
import oracle.jbo.server.ViewObjectImpl;
// ---    File generated by Oracle ADF Business Components Design Time.
// ---    Wed Mar 07 20:22:11 CET 2012
// ---    Custom code may be added to this class.
// ---    Warning: Do not modify method signatures of generated methods.
public class AppModule1Impl extends CustomAppModuleImpl {
     * This is the default constructor (do not remove).
    public AppModule1Impl() {
     * Container's getter for EmployeesView1.
     * @return EmployeesView1
    public ViewObjectImpl getEmployeesView1() {
        return (ViewObjectImpl)findViewObject("EmployeesView1");
}Now I have BTF (bounded task flow, with default properties) and I call that task flow on a button press. With default properties ( Transaction: <No Controller Transaction> ) I get preferred values from session's userData within Entity Object.
Code snippet inside that entity implementation looks like:
        DBTransaction dbt = getDBTransaction();
        System.out.println(getClass().getName() + " entity lives AM: " + dbt.getRootApplicationModule().getClass().getName());
        if (dbt.getSession().getUserData() == null) {
            System.out.println(CustomAppModuleImpl.SESSION_VAR + " -> NULL");
        } else {
            System.out.println(CustomAppModuleImpl.SESSION_VAR + " -> " + dbt.getSession().getUserData().get(CustomAppModuleImpl.SESSION_VAR));
...And as I mentioned output is correct:
test.model.EmployeesImpl entity lives AM: test.model.AppModule1Impl
MySessionVar -> UselessNow the trickiest part. As soon as I change property of called task flow Transaction to something else that +<No Controller Transaction>+, e.g. Always Begin New Transaction, code snippet from task-flow.xml :
    <transaction>
      <new-transaction/>
    </transaction>
..This session stuff begin to act unpredictably. Session's userData is now null. And Output looks like:
test.model.EmployeesImpl entity lives AM: oracle.jbo.server.ApplicationModuleImpl
MySessionVar -> NULLWhy in the world ADF uses oracle.jbo.server.ApplicationModuleImpl instead of test.model.AppModule1Impl or at least my defined test.model.CustomAppModuleImpl ?!?
Is this a bug? Or maybe a feature?
10x
Regards

Hi,
Why in the world ADF uses oracle.jbo.server.ApplicationModuleImpl instead of test.model.AppModule1Impl or at least my defined test.model.CustomAppModuleImpl ?!?
Is this a bug? Or maybe a feature?
ADF BC alwyas has a transaction opened even if the ADFc setting is No Transaction. So if you explicitly ask for a new transaction I assume that the ADF BC data control creates a new transaction without re-executing your AM initialization codes. Looks as if it uses an internal AM instance for this just to hold the transaction. However, worth filing this as a bug - assuming you reproduced this with a later version of either JDeveloper 11g R1 or R2
Frank

Similar Messages

  • ADF Task Flow: Using Task Flow Call as Application Entry Point

    In our product we have a task flow structure very similar to the Fusion Order Demo application, but we are having serious trouble reproducing the documented functionality of ADF Task Flows.
    Specifically, we cannot use a task flow call as an entry point for our application, which is very important for us to achieve.
    The [Developer s Guide|http://download.oracle.com/docs/cd/E12839_01/web.1111/b31974/taskflows.htm#ADFFD1634] states about the [demo application|http://www.oracle.com/technology/products/jdev/samples/fod/index.html] :
    "A Fusion web application always contains an ADF unbounded task flow, which contains the entry point or points to the application. Figure 14-3 displays the diagram for the unbounded task flow from the Fusion Order Demo Application. This task flow contains the Home, *MyOrders*, *checkout*, registerUser, and updateUserInfo *view activities, which are all entry points to the application*."
    "The checkout-task-flow activity in Figure 14-3 is a call to an ADF bounded task flow."
    When we run the Fusion Demo Application, we are only able to use home, updateUserInfo and register as entry points.
    We cannot enter the application through any of the task flow call activities (MyOrders and checkout) as the documentation suggests.
    What are the reasons for this and how do we fix it, so we can use task flow call activities as application entry points?
    Thanks.
    Edited by: Rune Glerup on Oct 9, 2009 2:51 AM
    The forum did not display the link to "Developer's Guide" because the link contained the single quote char '. Single quote char removed.

    Is what you mention here the case in the Fusion Order Demo application?
    If the task flow call activities cannot be used as entry points, why is it stated in the documentation?
    How do we solve this, so that the task flow call activities (including parameter bindings) can be used as entry points, like the documentation suggests?

  • Use task flow or simple pages in CRUD?

    Hello,
    using JDeveloper 12c.
    In my case I use task flow to create a simple CRUD, i have two task flow, for it in the first I have a employees table and a button to create a new employee, the button has an action to go to another task flow where I have a Method call of CreateInsert which in turn go a view activity that has a form to create an employee.
    The problem is, when committing task makes a return to the main flow but the table not refreshes with the new employee, every task flow isolated handled transactions.
    I recommend, work the CRUD with task flow or single pages?
    thank you very much in advance.

    thank you very much, I got the exact answer, thank you very much again.

  • Using Task Flow in the template page

    Dear all,
    I am beginer and I work with JDev 11.1.1.3.0
    In my application I've got a template page called 'templateDef1.jspx'. In this page on the top facet I've got two commands link: 'Asort' and 'Reports'.
    I've created a new JSF page called 'main.jspx' which is based on the templateDef1 and in the center facet I dropped an ADF Bounded Task Flow as a Region. This bounded task flow contains two pages ('asort.jsff' and 'report.jsff'). When I run the main.jspx page I can navigate from 'asort' to 'report' page fragment using the button inside the page fragments.
    Now I want to navigate to those page fragments using the commands link from 'templateDef1.jspx'. What should I do ?
    I've tried several things but nothing works.
    Any help will be appreciated.
    Regards,
    Wojtek.
    Edited by: kojot on 2011-01-13 03:55

    Thank you a lot for you replies.
    Amit, I tried your solution but something doesn't work. I think the parameter isn't passing into the task flow.
    In my template page, after I added <af:setActionListener> I got two warnings: Reference "PageFlowScope.Flow" not found.
    The ref Center facet is refreshing properly, but it always displays the assort.jsff, because it is marked as default activity in my task flow.
    Here is the fragment of code of template page:
    <af:commandLink id="clAsort">
                      <af:panelGroupLayout id="pt_pgl2" halign="center"
                                           valign="middle" layout="vertical">
                        <af:image source="/ikony/asortyment.jpg" id="pt_i1"
                                  shortDesc="Asortyment"/>
                        <af:outputLabel value="Asortyment" id="pt_ol1"
                                        inlineStyle="color:Blue;"/>
                      </af:panelGroupLayout>
                      <af:setActionListener from="#{'A'}"
                                            to="#{pageFlowScope.Flow}"/>
                    </af:commandLink>
                    <af:spacer width="30" height="10" id="pt_s1"/>
                    <af:commandLink id="clReport">
                      <af:panelGroupLayout id="pt_pgl3" halign="center"
                                           valign="middle" layout="vertical">
                        <af:image source="/ikony/raporty.jpg" shortDesc="Raporty"
                                  id="pt_i2"/>
                        <af:outputLabel value="Raporty" id="pt_ol2"
                                        inlineStyle="color:Blue;"/>
                      </af:panelGroupLayout>
                      <af:setActionListener from="#{'R'}"
                                            to="#{pageFlowScope.Flow}"/>
                    </af:commandLink>And the code of the whole task flow definition:
    <?xml version="1.0" encoding="windows-1250" ?>
    <adfc-config xmlns="http://xmlns.oracle.com/adf/controller" version="1.2">
      <task-flow-definition id="page-frag-task-flow">
        <default-activity id="__1">asort</default-activity>
        <data-control-scope id="__24">
          <shared/>
        </data-control-scope>
        <input-parameter-definition id="__12">
          <name id="__13">Flow</name>
          <value>#{pageFlowScope.Flow}</value>
          <class>java.lang.String</class>
        </input-parameter-definition>
        <view id="asort">
          <page>/fragments/asort.jsff</page>
        </view>
        <view id="raport">
          <page>/fragments/raport.jsff</page>
        </view>
        <router id="router1">
          <case>
            <expression>#{pageFlowScope.Flow == 'A'}</expression>
            <outcome id="__18">asortView</outcome>
          </case>
          <case>
            <expression>#{pageFlowScope.Flow == 'R'}</expression>
            <outcome id="__23">raportView</outcome>
          </case>
          <default-outcome>raportView</default-outcome>
        </router>
        <control-flow-rule id="__2">
          <from-activity-id id="__3">asort</from-activity-id>
          <control-flow-case id="__4">
            <from-outcome id="__6">viewRaport</from-outcome>
            <to-activity-id id="__5">raport</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <control-flow-rule id="__7">
          <from-activity-id id="__8">raport</from-activity-id>
          <control-flow-case id="__10">
            <from-outcome id="__11">viewAsort</from-outcome>
            <to-activity-id id="__9">asort</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <control-flow-rule id="__14">
          <from-activity-id id="__15">router1</from-activity-id>
          <control-flow-case id="__17">
            <from-outcome id="__19">asortView</from-outcome>
            <to-activity-id id="__16">asort</to-activity-id>
          </control-flow-case>
          <control-flow-case id="__20">
            <from-outcome id="__22">raportView</from-outcome>
            <to-activity-id id="__21">raport</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <use-page-fragments/>
      </task-flow-definition>
    </adfc-config>In main.jspx page, after I dropped the task flow as region, I left the parametersMap blank and I set the value to the parameter Flow as #{pageFlowScope.Flow}. Am I doing it right ? I have to missed something becuase it doesn't work.
    I also read ADF Handbook and some blogs to get know how to pass parameters into bounded task flow, but I couldn't solve my problem.
    Regards,
    Wojtek.

  • How to use parallel flowed subforms begining at the same position.

    How to use parallel flowed subforms begining at the same position in my form.
    Ex
    Subform1
    Subform2
    Subform3
    DropDownList1
    DropDownList1
    DropDownList1
    I would like to repeat  with a button the 3 subforms in parallel
    Subform1
    Subform2
    Subform3
    DropDownList1
    DropDownList1
    DropDownList1
    Subform1
    Subform2
    Subform3
    DropDownList1
    DropDownList1
    DropDownList1

    Post your question in the LiveCycle Designer forum.

  • Req any examples of how to use a USB midi controller​/keyboards with Labview TIA

    Req any examples of how to use a USB midi controller/keyboards with Labview TIA

    Hi,
    To access the MIDI ports you will need to call the Windows SDK. To send MIDI commands is relatively easy, here is an example that shows you how to send data to a MIDI controller or keyboard.
    As far as input goes, this is the hard part. There are a series of functions that you need to call to open up the device, set some buffers and and possibly a callback to get notifications on the incoming data.
    Reading MIDI data will not be an easy task, your best bet will be to implement this in a DLL and call that DLL in LabVIEW, there should be some code available o the web.
    = "http://msdn.microsoft.com/library/default.asp?url​=/library/en-us/multimed/htm/_win32_multimedia_... is a link to the Windows multimedia functions that you could use for MIDI input.
    Let me know if you have any further questions.
    Regards,
    Juan Carlos
    N.I.

  • How to Use SQL Query having IN Clause With DB Adapter

    Hi,
    I am using 11.1.1.5 want to find out how to Use SQL Query having IN Clause With DB Adapter. I want to pass the IN values dynamically. Any ideas.
    Thanks

    invoke a stored procedure, it's safer than trying to put together an arbitrary SQL statement in the JCA adapter

  • How to use 45W MagSafe 2 Power Adapter with cable management MagSafe 2 power port macbook air 2013

    How to use 45W MagSafe 2 Power Adapter with cable management MagSafe 2 power port macbook air 2013 there's two plugs do I use both for the safety to work or I just one ? Thanks sorry new macbook air 2013 was given to my daughter fir her 18th bday 2 days ago by my brother

    No, the one is just an extension cord,          just use the 45W charger with its attached thin cord and connect the magnetic magsafe to to the connector on the back left of the macbook Air for use and charging it

  • In SQLScript, how to use EXEC to call another procedure with parameters in procedure?

    Hi experts,
    In SQLScript, How to use EXEC to call another procedure with input and output parameters in procedure?thanks very much

    Hi Sagar,
    thank you! I generate another procedure with an input parameter and an output parameter in a procedure. Then i need to call the generated procedure using EXEC. Here is my code:
    create procedure ftest1(out sum_num bigint)
    as
    begin
    declare fa_output bigint;
    declare v_sql_drop varchar(200);
    declare v_sql varchar(500);
    declare cursor c_cursor1 for select num from TABLE1;
    --v_sql_drop := 'drop procedure fe';
    --exec v_sql_drop;
    v_sql := 'create procedure fe(in i_num bigint,out o_num bigint) as begin';
    v_sql := :v_sql || ' o_num := :i_num * 2 + :i_num * :i_num;';
    v_sql := :v_sql || ' end';
    exec v_sql;
    open c_cursor1;
    for c_item as c_cursor1 do
    exec 'call fe(c_item.num,o_num=>fa_output)';
    if sum_num is null then
    sum_num := fa_output;
    else
    sum_num := :sum_num + fa_output;
    end if;
    end for;
    close c_cursor1;
    end;
    The underline code is using exec to call the generated procedure. But this method cannot work. Any suggestion? thanks again!

  • How to use Mac Mini Server as NAT with only one port??

    How to use Mac Mini Server as NAT with only one ethernet port??

    But why did apple sell me this server that does NAT with one port? I don't get it.

  • ADF mobile: how to link task flow to a list view item

    Hi
    I am trying to build a mobile app in adf and i created a popup on the left button on the header. this popup has a list view showing few options.
    now the requirement is to click on the option and navigate to that feature (which is created as a task flow).
    so, i am not sure how do like the task flow to the link in the listView of the popup. Please advise

    Well, if that list contains all features, you can use the 'features' from the ApplicationFeatures DC (they contain the ID, name, ... so you can use #{row.id} instead of hardcoding it).
    If that list does only contain a few features, you can make your own list.
    In your own backing bean or data control, you can get all the features by using:
            ApplicationFeatures af = new ApplicationFeatures();
            af.getFeatures();And filter them.
    An example that I made/use myself:
    It uses an commandLink to navigate because I need to be able to 'disable' (= not clickable) some features (it has the same look as an ListView).
    So iff just use the getFeatures(), you can use the ListView for navigation.
    <amx:iterator var="row" value="#{bindings.features.collectionModel}" id="i1">   
            <amx:tableLayout width="100%" id="tl2" inlineStyle="background-color:White;">
              <amx:rowLayout id="rl2">
                <amx:cellFormat width="50px" height="50px" halign="center" id="cf4" valign="middle"
                                inlineStyle="border-bottom:thin solid #b8b9c8;">
                  <amx:image source="#{row.icon}" id="i2" inlineStyle="width:40px;"/>
                </amx:cellFormat>
                <amx:cellFormat width="100%"  height="43px" id="cf3" valign="middle"
                                inlineStyle="border-bottom:thin solid #b8b9c8;">
                  <amx:commandLink text="#{row.name}" id="cl1" inlineStyle="color:Black; font-weight:bolder; font-size:110%;"
                                   disabled="#{!row.enable}">
                    <amx:setPropertyListener from="#{row.id}" to="#{pageFlowScope.feature}" />
                    <amx:actionListener binding="#{bindings.resetFeature.execute}"/>
                  </amx:commandLink>
                </amx:cellFormat>
              </amx:rowLayout>
            </amx:tableLayout>
          </amx:iterator>This my own data control :
    public class MenuDC {
        private ExtendedFeatureInformation[] features;
        private String message;
        public MenuDC() {
        public ExtendedFeatureInformation[] getFeatures()
            ApplicationFeatures af = new ApplicationFeatures();
            this.fillExtendedFeatureList(af.getFeatures());
            return features;
        private void fillExtendedFeatureList(FeatureInformation[] realFeatures)
            message = "";
            ModelController.getSingletonModelController().refreshMinorTables();
            features = new ExtendedFeatureInformation[realFeatures.length];
            for(int i = 0; i < realFeatures.length; i++) 
                boolean enable = true;
                FeatureInformation fi = realFeatures;
    if(fi.getId().equals("be.kpd.newDayReport"))
    if(ModelController.getSingletonModelController().getVarFormLocalDB(HardcodedVarCodes.LAST_SYNC).equals(""))
    enable = false;
    if(fi.getId().equals("be.kpd.overviewDayReport"))
    if(ModelController.getSingletonModelController().getRegisDFromLastSevenDays().size() == 0)
    enable = false;
    if(!enable)
    message = "SYNC_NEEDED";
    ExtendedFeatureInformation efi = new ExtendedFeatureInformation(fi.getId(),fi.getName(),fi.getIcon(),fi.getImage(),enable);
    features[i] = efi;
    public String getMessage() {
    return message;
    I made my own POJO which implements the FeatureInformation interface,
    because I needed an extra boolean attribute for disabling some features.
    public class ExtendedFeatureInformation implements FeatureInformation {
        private String id,name,icon,image;
        private boolean enable;
        public ExtendedFeatureInformation() {
            super();
        public ExtendedFeatureInformation(String id, String name, String icon, String image, boolean enable) {
            super();
            this.id = id;
            this.name = name;
            this.icon = icon;
            this.image = image;
            this.enable = enable;
        public String getId() {
            return id;
        public String getName() {
            return name;
        public String getIcon() {
            return icon;
        public String getImage() {
            return image;
        public boolean isEnable() {
            return enable;

  • 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

  • 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.

  • Problem with back button when using task flow to navigate through pages

    I am using unbounded task flow to navigate through my pages
    in page2 I added back button so I can back to page1 using the action A2
    task flow 1
    page 1 -----A1-------> page 2
    page2 ----A2--------> page1
    the problem when I used page2 in another task flow
    task flow 2
    page 3 -----A3------> page2
    page 2 -----A4 -----> page3
    here when I click on back button he take me to page1
    how can I back to page3 ???????

    For this you have to know where the user came from when he navigated to page2. You can e.g. store the back target in a variable in the session or pageflow scope (when the user navigates from page1 or page3 to page2), then you bind the back button of page 2 to the stored variable.
    Timo

  • How to invoke task flow navigation after closing inline popup?

    Using JDev 11.1.1.3; I have a commandButton that currently executes task flow navigation when pressed. I need however to invoke an inline popup from the button press before executing (conditionally) the task flow navigation. The Action setting on the button then needs to be removed, but it's not clear where to reinstate it. I have the button executing some managed bean code, which conditionally invokes the inline popup, and when the popup (contains af:dialog) is closed, I have some more managed bean code that determines whether the task flow navigation should occur or not. What I need to know is how to fire off the Action from the managed bean. Any suggestions?
    Thanks,

    1. To add to Timo's solution:
    you can call those code from DialogListener like:
    public void dLstnr(DialogEvent dle){
    if("ok".equalsIgnoreCase(dle.getOutcome().toString())){
    FacesContext context = FacesContext.getCurrentInstance();
    NavigationHandler nh = context.getApplication().getNavigationHandler();
    System.out.println("1");
    nh.handleNavigation(context, "", "go");
    2. As another solution:'
    you can have custom buttons and on one of then (say OK or Yes) you can call bean method like this as Action:
    public String actionMethod(){
    // DO YOUR LOGIC
    return "NEXT_TARGET";
    for Other button (say Cancel, NO) just close the popup.
    Amit

Maybe you are looking for

  • How to configure Free of charge posting to cost account and not to balance?

    Hi, If we post GI for a free of charge delivery (sample) the following will be posted: Cost of Sales 100 Finished goods 100 But we do not want to post to Cost of Sales but to a cost account. What do I need to change? Regards, Eric.

  • Bonjour service running but itunes doesn't recognize it

    Hi, I have a Windows 7 computer. I had previously disabled the bonjour service due to conflicts. But now I need it to share with an apple tv. I reinstalled bonjour and my system shows it as running. However, itunes (which i also deinstalled and reins

  • Panning the screen of your 12" monitor

    Panning is the ability to set your desktop bigger than your actually monitor. (e.g. PB 12" is 1024x768, but you set the desktop to say, 1680x1050). You can only see 1024 at a time, but with the mouse, you slide the view to different parts of the 1680

  • How much better is the 7300GT than the X1600 Radeon?

    I'm contemplating getting an iMac. I still haven't decided whether I should wait to see if Apple does an Aluminium iMac with a matte screen. But if I decide to buy now, I have a choice of two macs, the 24 inch white and 20 inch white ones. I can't ge

  • Can you call a built-in labview VI using teststand directly? For "File last modified"...

    I am trying to use Teststand to retrieve the "last modified" timestamp property for the sequence file that is running. The purpose is to determine whether a modification has been made since the last time a sequence with the same file name was run. Th