Page Flow and Java Control interaction

Hi everybody !
Even after to read some documents like
http://dev2dev.bea.com/pub/a/2004/06/wlw_internals.html
and
http://dev2dev.bea.com/pub/a/2004/01/jones.html
i still didn't get what is really happening "behind the scenes" between Page Flows and Java Controls (Workshop 8.1). I would be glad if anyone could send to me more detailed documentation or explanation about this subject.
How can a Java Control to stand behind a Stateless Session Bean (GenericStatelessSLSB) and still to keep its internal state (instance variables) consistent ? How can a statefull Java Control to remain statefull being accessed by a stateless component (the EJB) ? Or is the source code of a Java Control (the JCS file) kept by the Page Flow and sent to EJB for its execution ?
Thanks in advance.

Hi Daniel
I have attached a doc I created that explains what happens behind the scenes
when a pageflow call a JCS va a JWS calling a JCS.
Can you please go through the document and let me know any questions you may
have?
Thanks
Vimala
<Daniel Lima> wrote in message news:[email protected]..
Hi everybody !
Even after to read some documents like
http://dev2dev.bea.com/pub/a/2004/06/wlw_internals.html
and
http://dev2dev.bea.com/pub/a/2004/01/jones.html
i still didn't get what is really happening "behind the scenes" between
Page Flows and Java Controls (Workshop 8.1). I would be glad if anyone
could send to me more detailed documentation or explanation about this
subject.
How can a Java Control to stand behind a Stateless Session Bean
(GenericStatelessSLSB) and still to keep its internal state (instance
variables) consistent ? How can a statefull Java Control to remain
statefull being accessed by a stateless component (the EJB) ? Or is the
source code of a Java Control (the JCS file) kept by the Page Flow and
sent to EJB for its execution ?
Thanks in advance.

Similar Messages

  • Difference between java page flow and java process definition

    I have joined a BEA WebLogic Integration project as an entry level BEA developer. I have a big question on the real difference between a jpf and a jpd. My co-workers say there is actually no difference, but I don't believe so. I think a jpd is more like a back-end process and it may or may not not need a View(MVC). While a jpf is the Controller(MVC) and is closely related to a web-based application where all the navigation logic(and only navigation logic) resides. A jpf normally should have a View(rendered on browser or other terminals) to present data from Model. I strongly believe this is true. But my project manager and my team lead, both are very technical guys, fiercely object to my understanding. I am extremely curious to have input from the BEA community on this fundamental concept.

    I find it hard to believe your team lead really believes there is no difference between a JPF and a JPD. There are numerous differences, both conceptually and technically.
    I believe your understanding of the differing roles of the two is correct. A JPF would represent the view of an application, and a JPD would represent callable services of an application, and server-side business logic.
    From the technical point of view, a JPF, assuming it avoided certain features, can be deployed on Tomcat. The core of it is a pure servlet application. A JPD is an EJB, either a SLSB or a SFSB.

  • Use context to pass value between JPF and Java Control

    hi,
    Can we use context to pass value between JPF and Java Control? It works if i m using InitialContext in the same machine but i dun think it will works if i put Web server and application server in different machine. Anyone have an idea how to do it?
    I also want to get the method name in the onAcquire callback method. Anyone knows how to do this?
    thks
    ?:|

    Hi.
    Yoy can the next options for make this:
    1. Pass your values in http request.
    example: http://localhost/index.jsp?var1=value1&var2=value2&var3....
    2. You can use a no visible frame (of height or width 0) and keep your variables and values there using Javascript, but of this form, single you will be able to check the values in the part client, not in the server. Of this form, the values of vars are not visible from the user in the navigation bar.
    Greeting.

  • Nested Page Flows and Pop Ups - Workshop 8.1

    Hi, everybody.
    I'm facing the following problem:
    I've a "main" page flow within some page flow-scoped data and forms. Now i need to open/execute another page flow (a "secondary" one) inside a pop up window. The tricky is i cannot "lose" the data in the first page flow. I will navigate to main page, fill some data, open the pop up, execute some queries, close the pop up and continue previous navigation.
    If i don't use a "nested" page flow for my pop up, i loose the page flow-scoped data from my main page flow (a new page flow is created).
    If i use a nested page flow, the following scene does not work:
    - Go to main page (create main page flow);
    - Fill some data;
    - Open pop up (create nested page flow);
    - Perform some queries (execute actions inside nested page flow);
    - Close pop up window;
    - Fill some data;
    - Submit main page;
    - Execute form validation using Struts Validator.
    When i execute the last step and there are errors in the submitted form, netui data binding tags fail. I believe that the engine "thinks" that it should use nested page flow (and form) instead of the main page flow (and form).
    I've found a workaround for this situation: When the pop up is closed, the main page execute a "dummy refresh action" in the main page flow.
    Is this the correct behaviour ? Is there another way of do it ?
    Thanks in advance.

    Hi Vimala.
    I cannot lose page flow data because i have other kind of data (beside a form) inside my page flow: Options values, previous search result list, ...
    Can i close the pop up window without call "return-action" ? How should i proceed if i don't need/have a "return-action" ?
    How should i proceed if i should to specify the forward of a "return-action" as a request parameter/attribute ?
    Thanks.

  • JRE 6 freeze browsers and Java Control Panel Applet stops working!

    Hello,
    this is the second time I got this problem with Java JRE 6 ! First one was a month or two ago:
    I have Java JRE 6 update 20 installed on a Windows 7 64bit ultimate. It was working...much time ago...then i found my browser (firefox, google chrome or IE8) was freezing when I open java application or test pages. I tried uninstalling it, cleaning the system with Revo Uninstaller, or CCleaner or JavaRA and reinstalling with no luck. The other problem is the same that user Mass8 had (http://forums.sun.com/thread.jspa?threadID=5372196&start=15&tstart=0)
    ...my java control panel applet is not working and give me this:
    http://www.iouppo.com/lite/pics/df9b61008b5bf9de61a13d8bfa3ddad1.jpg
    I tried disabling UAC, running JRE, starting Win7 in safe mode with network...but browser always freeze. It's not a true freeze, with CPU busy at 100% (cpu stays in idle) but it seems to wait for something. It's not a problem with video card driver on my machine, because I can start java control panel from command prompt...and without the noddraw switch, using this command:
    javaw -Xbootclasspath/a:..\lib\deploy.jar -Duser.home="%HOMEDRIVE%%HOMEPATH%" com.sun.deploy.panel.ControlPanel
    This was the description of my first time.....then I replaced my system with an Acronis image...and I used the system for sometimes....and Java was working until 3-4 days ago! So I did another image of the system with all things working.
    Then this morning...I tried the java test page.....and surprise! It's not working anymore!
    In these days I think I only disabled UAC and Account virtualization....maybe JAVA saves things there...and then when I disabled UAC (Windows7 deleted those folders and files) it can't find there anymore???? Who can help me?
    I don't want to restore my image every month!
    My system is 100% virus free and from the last image restoration I didn't visit suspicious sites and so on....I have antivirus and antispyware software...all is perfectly CLEAN. Any ideas or things to try?

    I'm beginning to think it's something related to Hybernation after using JAVA....I'm using it very often...and if I use it...and I suspect Java is KO...i try control panel and it doesn't works....then I try with browser and it freeze (or keep waiting...and i can only force to close it)
    THEN,
    when I reboot my system I get this window
    http://www.iouppo.com/lite/pics/09501eb799c165bb25ece8fd3261e41c.jpg
    suggesting me to rename the folder C:\Program in C:\Program1 ...and if i don't rename it...java will never work...instead if I allow it...Windows will fix it!......This until...the next hybernation....:(....
    try to replicate this...maybe I found where is the problem..

  • Controller Java Page Flow and Backing file

    Hello all,
    I am very confused with the controller and the backing file, for example, I have a login page, I would like to flow to another page after I successfully login, which method I should use.
    Thanks and best regards
    Spencer

    u can use the validation technique provided by the weblogic.

  • Make native code and Java VM interact

    Hi all,
    I am building a native components (Delphi and C++) using JNI.
    Currently my components involve a Java GUI.
    It loads the JVM, then request for that Java Object GUI.
    When the interface is created, I need to get back information
    from what the user can type in.
    However, the native code doesn't wait. It runs and continues right after
    the creation of the GUI, thus causing me trouble (trying to get
    null objects).
    Is there a way to make the native code wait for a java command from
    the interface, or is there a way to make both part of the component
    (java / native) to communicate and interact ?
    Any help would be appreciated.
    Thanks
    Regards,
    Florent

    There are quite a few options here, and this may not
    be the best, per se, but you could make a blocking
    call from the JNI to a Java method. That Java method
    will only return after whatever you want done in the
    interface has completed.Thanks for your reply. Is there other solution in the JNI itself,
    using the JNIEnv Object ?
    Else, I'll try to use that solution.
    Regards,
    Florent

  • Forms 10g R2 and Java Bean Interaction

    Hi,
    I need some help.
    I have a Forms app and a Java app that i need to communicate between them.
    The Java app send and receive events. How i send and receive events in Forms 10g.
    What you recommend to do that.
    Thank You. JP.

    There is a very good example in the otn in the forms-demo-section.
    Go: OTN - Sample Code - Oracle Forms - JavaBeans
    try it
    Gerd

  • Java Controls as singletons

    Hi everybody.
    Can i use Java Control Factories to treat Java Controls as singletons ? Is there any issue about multiple threads acessing the same instance of (Built-in or Custom) Java Controls ?
    When i use the following structure:
    Page Flow -> Custom Java Control -> Built-in Java Control
    and my Custom Java Control is "stateless". Can i "share" the same instance of Custom Java Control between different Page Flows ? How should i proceed to do it ?
    Thanks in advance.

    Hi Daniel
    I don't think java controls are multithreaded and also since they are executed as EJB's you cannot do threading there.
    Basically java controls (jcs) internally gets invoked within a EJB container so you can say that JCS kind of becomes an EJB and so have the EJB pool, cache funactionality so eventually we reuse the instances of the ejb for incoming requests.
    If the control is stateless then the EJB wrapper for the control code will be a stateless EJB and hence we reuse the instances as they become free after the method execution.
    Similarly if the control is stateful then we use Entity beans(BMP container bean) which saves the state in the database and maintains it. In essence you do get the advantage of pooling, transaction etc
    Thanks
    Vimala

  • Using a control implimentaion file in BEA page flows?

    I'm using BEA Weblogic 9.2 and I've created a custom JDBC control to use in my project with page flows.
    My control has 4 files:
    1.) myModel.java: contains the class that represents the table.
    2.) myControl.java: the interface for the control.
    3.) myControlDB.java: public interface that extends jdbcControl and contains the basic operations for the database. No actual methods, just sql commands in the annotations.
    4.) myControlImpl.java: Contains the business logic for the control and has the @ControlImplimentation annotation.
    However, I'm not sure what purpose the "control implimentation" file servers. I can't use it in the page flows, and I can't add it to the "referenced controls" list.
    How do I use this control implementation in my page flows?

    Hi,
    Does your custom control appear in the insert -> control -> existing control option ?
    Can you also verify that the corresponding method is created in the custom control interface
    In the source view, place the cursor on the custom control method, and enter Ctrl + 1, select the create in super type option. This should create the corresponding method in the interface.
    I've also listed the link to our documentation which explains in detail about using database controls
    http://e-docs.bea.com/workshop/docs92/ws_platform/controls/system/jdbc/navDatabaseControl.html
    -Raj

  • JDev 10.1.3 Errors BME-01605 and BME-99033 in Struts Page Flow

    Hi All,
    I get the following error when I choose the Data Page icon in Struts Page Flow and try to drag into the diagram. Any ideas???
    Thanks!!!
    java.lang.NullPointerException     at oracle.bm.diagrammer.registry.RBaseShape.setDefaultCore(RBaseShape.java:539)     
    at oracle.bm.diagrammer.shape.BaseDiagramShape.initProperties(BaseDiagramShape.java:450)     
    at oracle.bm.diagrammer.shape.BaseDiagramShape.initShape(BaseDiagramShape.java:322)     
    at oracle.bm.diagrammer.shape.BaseDiagramNode.initShape(BaseDiagramNode.java:291)     
    at oracle.adfdt.controller.struts.diagram.shape.StrutsActionNode.initShape(StrutsActionNode.java:68)     
    at oracle.bm.diagrammer.BaseDiagram.addShape(BaseDiagram.java:6913)
    at oracle.adfdt.controller.diagram.PageFlowDiagram.addShape(PageFlowDiagram.java:197)     
    at oracle.bm.diagrammer.BaseDiagram.addShape(BaseDiagram.java:6838)
    at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.doCreateNode(CreateRegisteredShapeTracker.java:715)     
    at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker$6.performAction(CreateRegisteredShapeTracker.java:297)
    at oracle.bm.diagrammer.LockMonitor.performLockedAction(LockMonitor.java:64)     
    at oracle.bm.diagrammer.BaseDiagram.performDiagramLockedAction(BaseDiagram.java:2429)     
    at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.processEvent(CreateRegisteredShapeTracker.java:279)     
    at oracle.bm.diagrammer.track.TrackerStack.processEvent(TrackerStack.java:403)
    at oracle.bm.diagrammer.track.TrackerStack.pop(TrackerStack.java:198)
    at oracle.bm.diagrammer.track.RectangularTracker.mouseReleased(RectangularTracker.java:441)
    at oracle.bm.diagrammer.track.ModularTracker.processEvent(ModularTracker.java:196)
    at oracle.bm.diagrammer.track.TrackerStack.processEvent(TrackerStack.java:389)
    at oracle.bm.diagrammer.BaseDiagramView$53.processEvent(BaseDiagramView.java:719)
    at oracle.bm.diagrammer.PageView$PageViewPanel.fireEvent(PageView.java:2904)
    at oracle.bm.diagrammer.PageView$PageViewPanel.processEvent(PageView.java:3097)
    at java.awt.Component.dispatchEventImpl(Component.java:3955)
    at java.awt.Container.dispatchEventImpl(Container.java:2024)
    at java.awt.Component.dispatchEvent(Component.java:3803)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
    at java.awt.Container.dispatchEventImpl(Container.java:2010)
    at java.awt.Window.dispatchEventImpl(Window.java:1774)
    at java.awt.Component.dispatchEvent(Component.java:3803)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

    Never mind!!! I restarted Jdeveloper and now works!!!
    Sorry

  • Applet and Page flow communication

    Hi
    we have a design requirement where we need to have access to various peripherals
    like cash drawer,point of sales printer etc form the client workstation. We are
    usign workshop for development and we are looking into integrating an applet into
    the pageflow(actually the pages created using page flows) and need to be able
    to pass data into the applet at run time from the page (created usign page flow)
    like commands to open the cash drawer, to start and end the printing .
    Is it possible to pass data from the pages created using page flows into the applet
    at run time? if so could someone share a small code snippet.
    Thanks
    Keith

    Keith--
    You can do this if you use the JSP to render data into the applet's
    <param/> tags. For example, you can evaluate expressions that bind to
    the JPF / action form / request / etc and render the output using the
    <netui:content> tag.
    In your JSP, this might look like:
    <param
    name="<netui:content value="{pageFlow.someName}"/>
    value="<netui:content value="{pageFlow.someValue}"/>"
    />
    If the value of {pageFlow.someName} is foo and the value of
    {pageFlow.someValue} is bar, then this would write:
    <param name="foo" value="bar"/>
    If you have a data set to render in <param/> tags, you can certainly
    nest something like the example above inside the <netui-data:repeater>
    and use the "container.item" binding context.
    Hope that helps...
    Eddie
    keith shacks wrote:
    Hi
    we have a design requirement where we need to have access to various peripherals
    like cash drawer,point of sales printer etc form the client workstation. We are
    usign workshop for development and we are looking into integrating an applet into
    the pageflow(actually the pages created using page flows) and need to be able
    to pass data into the applet at run time from the page (created usign page flow)
    like commands to open the cash drawer, to start and end the printing .
    Is it possible to pass data from the pages created using page flows into the applet
    at run time? if so could someone share a small code snippet.
    Thanks
    Keith

  • EmptyStackException when exit from nested page flow on SP2

    I have tried to call a nested page flow (TestNestedController.jpf) from page flow
    and using redirect="true". After exit from nested page flow, it supposes that
    return to the action testNestedDone() in page flow(TestPageController). It works
    on SP1, but it fails on SP2.
    Please suggest any solutions for this issues.
    public class TestPageController extends PageFlowController
    // Uncomment this declaration to access Global.app.
    // protected global.Global globalApp;
    // For an example of page flow exception handling see the example "catch"
    and "exception-handler"
    // annotations in {project}/WEB-INF/src/global/Global.app
    * This method represents the point of entry into the pageflow
    * @jpf:action
    * @jpf:forward name="success" path="page.jsp"
    protected Forward begin()
    return new Forward("success");
    * @jpf:action
    * @jpf:forward name="success" path="/test/testNested/TestNestedController.jpf"
    redirect="true"
    protected Forward goToNested()
    System.out.println("go to nested redirect = true");
    return new Forward("success");
    * @jpf:action
    * @jpf:forward name="success" path="index.jsp"
    protected Forward testNestedDone()
    return new Forward("success");

    The error message like this:
    Empty nesting stack for returned action BackToPrevious from Page Flow /xxxx/viewMemberController.jpf.
    com.bea.wlw.netui.pageflow.EmptyNestingStackException: Empty nesting stack for
    returned action BackToPrevious from page flow /xxxx/viewMember/viewMemberController.jpf.
    at com.bea.wlw.netui.pageflow.FlowController.forwardTo(FlowController.java:1103)
    "patrick" <[email protected]> wrote:
    >
    I have tried to call a nested page flow (TestNestedController.jpf) from
    page flow
    and using redirect="true". After exit from nested page flow, it supposes
    that
    return to the action testNestedDone() in page flow(TestPageController).
    It works
    on SP1, but it fails on SP2.
    Please suggest any solutions for this issues.
    public class TestPageController extends PageFlowController
    // Uncomment this declaration to access Global.app.
    // protected global.Global globalApp;
    // For an example of page flow exception handling see the example
    "catch"
    and "exception-handler"
    // annotations in {project}/WEB-INF/src/global/Global.app
    * This method represents the point of entry into the pageflow
    * @jpf:action
    * @jpf:forward name="success" path="page.jsp"
    protected Forward begin()
    return new Forward("success");
    * @jpf:action
    * @jpf:forward name="success" path="/test/testNested/TestNestedController.jpf"
    redirect="true"
    protected Forward goToNested()
    System.out.println("go to nested redirect = true");
    return new Forward("success");
    * @jpf:action
    * @jpf:forward name="success" path="index.jsp"
    protected Forward testNestedDone()
    return new Forward("success");

  • No header/footer in page flow JSP

    good morning group
    i have a jsp in a popup which is part of a page flow, and therefore, the html header & footer is displayed. is there a way to suppress the rendering of the header&footer stuff ?
    many thanx in advance :-)
    best wishes
    -ToM-

    "Mindy" <[email protected]> wrote in message
              news:402a4528$[email protected]..
              >
              > Is there a way to get the NT login name of a user in the page flows and
              jsp? We
              > want to authenticate a user belongs to a group before giving him access to
              a site
              > so the first thing in the begin method in page flow will be to get his
              login name
              > and then we have another module which validates the user belongs to a
              particular
              > group.
              Two possibilities spring to mind, NTRealm which is a security realm for
              weblogic that works with NTLM, I have no personal experience with it however
              you can search edocs for more info about it. Another alternative is jCIFS
              which includes an NTLM authentication handler for HTTP. I have used this in
              a previous life and it works great. You can view more info about it here
              http://jcifs.samba.org/src/docs/httpclient.html.
              Gerald
              

  • How to moidfy ant file to compile page flow files only

    Hello,
    Our existing application is compiled with standard ANT task and running on weblogic server. Now I try to change the jsp part using page flow and weblogic workshop.
    I think I still need to create an application and a project that contains the page flow files. How can I modify the the ANT file and compile the page flow files only, then these files can be packed with other files into a WAR file?
    Thank you for the help in advance.
    Zhong

    Hi,
    You can go through this weblog Handling Of Non-HTML Documents by Brian. It would be useful to you.
    /people/mark.finnern/blog/2003/09/23/bsp-programming-handling-of-non-html-documents
    Regards,
    Ravikiran.C

Maybe you are looking for