How to minimize Client-Server Round-trip in ADF Faces application ?

Hi All,
We have just finished POC on our prototype of ADF Faces + ADF BC application. The POC Emphasizes on Bandwidth requirement.
After receing the result from the communication provider, including : TCP packets send, Bytes sent from/to server and number of Client-Server Round-Trip.
There are several part of the application that Must be tuned for the application to run on acceptable performance.
Here is some page/ function that should be tuned :
- First page, ADF Read Only Table with two images and some buttons, cause 5 round-trip
- ADF Dialog Returning Value (as LOV), cause 4 Round-trips
- On ADF Form, press Commit button, cause 3 Round-trips.
So the question is :
1) How to reduce round-trips on ADF Faces application ?
2) How to minimize the bytes send from / To server on a specific user action ?
Please give me some recommendation..
Thank you very much,
xtanto

Hi Frank and Steve,
Thank you for your reply.
Yes Frank, what I mean by Round-Trip is the traffic between Client and the Server. And Yes, we will use VSAT where the latency is 1 - 1.5 second, so that round-trip matters significantly.
What I will do is :
- use minimal skin and No image at all
- don't use Dialog for LOV because it requires AutoSubmit there.
- Use 'Apply-Changes' button to do server-side validation before Commit.
Then do the POC / testing again.
Thank you,
xtanto

Similar Messages

  • How much memory and CPU requirement to deploy  ADF Faces application ?

    Hi All,
    Is there any formula or docs to help me to determine how much memory and CPU requirement for IAS server, to deploy ADF Faces application ?
    How much memory / CPU GHz required per 1 user ?
    We plan to develope web based ERP application using ADF Faces and ADF BC.
    Pleasssee.. give me any aclue.. I need it so badly..
    Thank you for your help,
    xtanto

    xtanto,
    there is no formular for this. Note that it is not only ADF Faces but th emodel layer in particular that adds to this requirement.
    Frank

  • How to avoid server round trip?

    Hi,
    I am customizing UI for emergency contacts(ESS -> personnel info).
    When a value is corrected (changed after an error from server) in a text field and clicks review button nothing happens.
    It seems like I have to make a server round trip for the text value to be updated and be recognized (if I select a value in the other drop-down it makes a round trip and then recognizes the value I entered in the text field.)
    How to avoid this situation? Is there a work around for this?
    Please advise.
    Thanks,
    Dileep

    Dileep,
    Web Dynpro framework carries out round trip for some UI elements(liek table row selection). As per my knowledge this cannot be controlled or mdofied.
    Regards,
    Ganga

  • Trigger server round trip from input field

    HI,
    I have a normal  input field with  F4 help. I am trying to trigger a server round trip after selecting a value using the value help. I tried with the following code in the P-getter method , but is not working.
    when iv_property = if_bsp_wd_model_setter_getter=>fp_server_event OR
               iv_property = if_bsp_wd_model_setter_getter=>fp_onclick.
        rv_value = 'myeventname'
    is it because the fp_server_event or fp_onclick are only valid for a dropdown and not for a normal input field as in my case ?
    Please help.
    regards,
    Amrit.

    Amrit,
    I too checked now, there is an importing paramter. Try using code like this
    CREATE OBJECT rv_valuehelp_descriptor TYPE cl_bsp_wd_valuehelp_f4descr
        EXPORTING
          iv_help_id        = 'CRMD_PRICING-CURRENCY'
          iv_help_id_kind   = if_bsp_wd_valuehelp_f4descr=>help_id_kind_comp
          iv_input_mapping  = lt_inmap
          iv_output_mapping = lt_outmap
          IV_TRIGGER_SUBMIT = abap_true.
    Thank you Bhavishya for the tip.
    (I dint try it yet.)
    Regards,
    Masood Imrani S.

  • Check box in ALV, server round trip

    Hello,
    I have a ALV list with about fifty row. The first column is a checkbox. The user now can click several checkboxes. But after clicking each checkbox it seems that the system does a server round trip, the 'egg timer' appears. Is it possible to stop this in order to do the round trip only when a button is clicked?
    regards
    stefan

    Hi rather than using checkboxes, try making the Table selection mode as MULTI and instead of using checkboxes, make users select Rows. That way for multiple selects, they can press SHIFT key and select records rather than selecting one by one. Also for distinct selects they can use CNTRL key.
    Easier way.
    You can easily get all selected elements by calling
    NODE->GET_SELECTED_ELEMENTS( ).
    If the number of columns in the table are less, then this way it will be faster.
    Thanks
    Anand

  • Error while saving state in 'client' , in ADF faces application

    Thank you for reading my post
    I have an ADF faces application and i get this error and my application does not function correctly , does any one has an idea ?
    thanks
    06/10/17 17:34:38.15 10.1.3.1.0 Started
    06/10/17 17:34:55.546 web2: 10.1.3.1.0 Started
    06/10/17 17:45:49.531 web2: Servlet error
    java.lang.NullPointerException
         at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
         at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:157)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:367)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:336)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:196)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:619)
    06/10/17 17:46:02.703 web2: Servlet error
    javax.servlet.jsp.JspException: Error while saving state in 'client': 'An established connection was aborted by the software in your host machine'.
         at com.sun.faces.taglib.jsf_core.ViewTag.doAfterBody(ViewTag.java:206)
         at _index._jspService(_index.java:473)
         at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.1.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:287)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:50)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:193)
         at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:198)
         at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
         at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:157)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:367)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:336)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:196)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:167)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:619)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:619)

    StateManagerImpl.saveSerializedView tries to let UIViewRoot be a session
    attribute and the error message says it should be serializable; certainly it' not.
    I think HttpSession.setAttribute does not claim the object should be serializable.
    I don't know why apache's StandardSession.setAttribute claims so.

  • How to set event handler in af:inputText  adf faces component.

    Hi,
    I am using ADF Faces components for my application.
    I want to capture the onchange event of a text box on the server side.For this what should I do. How do I register an event handler for this.
    In the documentation of the CoreTags of the ADF for onFocus it is stated as below.Will this help me in any manner ?
    onfocus String the event handler for when the element receives focus.
    Please help me.
    Regards
    Uma

    Uma,
    - set autosubmit to true
    - set a value change listener in the managed bean
    Frank

  • How to create client stub while deployign EAR on Oracle Application Server

    Hi,
    I have deployed an EJB on Oracle Application Server 10g 10.1.2.0.2. And i want to call this ejb from other app server using ejb client. For that i need client stub.
    Is there any way I can create client stub while deploying EJB on the OC4J?
    I am sure there will be some options.
    Thanks and Regards
    AT

    Amit,
    It depends on which transport protocol you use to transmit both the client requests and the server responses: either IIOP or ORMI.
    Here's how it works: if you've chosen the IIOP protocol, the client stubs are generated at deploy time and stored in the iiopClient.jar file. Once created, you append this file to your java client's classpath.
    Now, if your choice is ORMI, the client stubs are created on demand by the container, so there is no need to append any jar file to the client classpath.
    Consult the OC4J Services Guide in the Official Oracle Application Server docs for further inforrmation on this topic, specially the "Remote Method Invocation" chapter.
    RB

  • Weblogic Server 10.3.6 + ADF 10g Application

    Hi,
    We recently migrated from OC4J server to Weblogic Server 10.3.6. We are having one issue in the application.
    The request scope Managed Bean in the application get executed only once from the server.
    On subsequent call for the page. The Managed bean constructor is not being called. Can anyone let us know if we are missing any caching settings?
    Regards,
    Anup

    Hi All,
    We are feeling that the jsp's are being served from the cache. Can anyone tell us How to make the settings to clear the cache and make sure no pages are served from the cache.
    Regards,
    Anup

  • URGENT: How to debug non-reproducable problem(s) in ADF JSF application?

    This is one of the most anoying things in programing.... We have JSF application developed by JDev 10.1.3 and deployed on AS. It works fine but almost once or twice per day users complain that, say on a certain page (could be any page) they click on a button or a link and nothing happens. Sometimes it looks like the browser is trying to open a page but never does and sometimes the link or a button is dead. I looked into log file under opmn/logs and could not find anything?
    This is very urgent, so please, please if you have any hint on how to approach this problem, let me know. At this time I cannot file the Service Request with Oracle since they would ask me to create sample code and reproduce the problem which is just not possible.
    please help.

    Hi,
    if you are on JDeveloper 10.1.3.0 then chances are that these are concurrency issues. If a user starts a long running query then others may be blocked by this. This is fixed in JSF RI that is contained in JDeveloper 10.1.3.1
    Its just a guess. To prove my assumption, make sure you run the app with a single seat and see if the issue reproduces or exclude queries from the tests.
    Frank

  • How to send an e-mail from an ADF BC application?

    Hi all,
    I have a requirement of sending e-mail from my ADF BC application.I am using JSF and Jdeveloper 10.1.3.3.0.
    Can anyone please help me out?
    Thanx in advance,
    Arijit

    You can do it easily, there are 2 ways;
    1- add a mail class and call its method from a managed bean. (viewcontroller) sample: http://www.javacommerce.com/displaypage.jsp?name=javamail.sql&id=18274
    2- write a stored procedure and create a view object in model side. Then use this viewobject. (model) reference: Oracle UTL_SMTP plsql package , sample: http://www.oracle-base.com/articles/9i/EmailFromPLSQL9i.php
    Mucahid

  • Trigger round trip in parent view from called view on close event

    Hi Experts,
                       We have a requirement in which from my view.htm page on click of a button (using onclientclick) I am opening another view using window.open of javascript.
      Now in pop-up after processing it, i am using self.close to close the pop-up, before this point I am setting collection of calling page in on_request method of pop-up page controller class, but it does not reflect after pop-up has closed. though it reflects on any round-trip on the calling page.
      How do I trigger round trip from pop-up after Self.Close from htm page?? Or from do_request method?
      I am trying to use opener.location.reload, but use of opener gives permission denied javascript error.
    Please help, I am really stuck here.
    Thanks,
    Rohit
    Edited by: Rohit Khetarpal on Mar 25, 2010 1:29 PM

    Still no replies no one using BSP now a days?
    I have one more doubt, in addition to above, I am coding in IC Web 5.0 application (CRM_IC), one of the z-views i created in z-bsp application (Z_WW_CRM_IC), where i have input field using CRMIC bsp tag in Search View.
    Now, I am opening another view in Pop-up using Onclientclick of button (as mentioned in above post too), but in the view URL, i need to send values that are entered in the search view, how can i do that.
    I have tried in javascript, var val = <%= <contextnode>->get_country( attribute_path = 'country') %>;
    but it doesn't work, it works only if there already has been a server round trip!
    Any help is highly appreciated.
    Thanks,
    Rohit

  • Client server programming

    Hi;
    I want to learn client server programming on using windows xp for the client and windows server 2003.
    I downloaded the 9.2 windows xp database version for the client . What do I need to download for the server? I see that there is a 32 and 64 bit version for the server.
    Thanks for your help!

    What I was asking is what should I install on the server
    the 32 or 64 bit version of oracle?
    I want to learn how to write client/server programs using Oracle.
    I have a network at home with one computer serving as the client and another has server 2003 on it.
    Again Thanks for your help!

  • Introduce My Client-Server Applet RPG Called EsperHunter

    Hi, my name is Yudhi Kurniawan.
    I have developed a client-server applet game which I called it EsperHunter project.
    It's a client-server Java applet Role Playing Game application.
    It's not like common applet games which are stand-alone games. It use server application for
    login player, getting its world and story, saving and loading playing status.
    It's not a multiplayer RPG, but as player you will find the interesting thing that the world
    of game and story will grow up continously or changed because its administrator can update
    or change the world and story of the game. You will find out how it's working at my documentation page.
    But I have a problem to launch that application in actual web because it's difficult to find
    web hosting which I can launch my server game application there. For now, my application is
    reliable for LAN development.
    You can download and try my application at my site at :
    http://members.fortunecity.com/yudhi97
    I really need a solution to solve this problem. As fellow of Java programmer, I hope that we
    can join a bussiness together to develop Java game application.
    Thank you for your attention.

    i'm not downloading all of that. that server sucks ass. i hate all those pop ups. i don't want to install and run any of that shite. maybe you should store all your files in a jar file

  • How to use CLIENT-CERT authentication?

    Hi,
    I would like to know how to use client authentication.
    I used a web application with CLIENT-CERT authentication.
    And I accessed to the application from browser, then I had the following error
    message:
    Incorrect or missing client certificate.
    I used OpenSSL to generate keys.
    Could you tell me the information of the setting?
    Especially, I don't know theentry of CertAuthenticator.
    Could you tell me?
    Regards,
    Kuniaki Hagiwara - HP Japan

    Thank you for your response.
    Yes we have added the client certificate file (.pfx) in the Firefox browser Certificate manager / Store. It's also showing the certificate in the View Certificate window. We could not resolve it yet.

Maybe you are looking for

  • Itunes slows down when sharing music is enabled

    hi, i searched through the forums and i didn't see that exact issue so i decided to post it. as soon as i share my library itunes completely slows down. - starting to play songs takes 5 seconds and displays the rotating rainbow circle - rating songs

  • [Wine] - How to deal with undetected ALSA Device problem

    All hail Google and Archwiki sorry for that nonsense, I'm just too happy after two days trying to make my speaker work with Wine. For those who get same problem with me (Wine didn't detect your ALSA device correctly and/or didn't list it on winecfg),

  • Slow motion  Adobe Premere Elements

    I am new at this, and am not good with computers. After asking for a user friendly video editing program, the guy in the store handed me this Adobe Premere Elements program. I don't understand much of the lingo in this forum, and the tutorials are mu

  • HT5824 how do i go onto my icloud account to delete apps that i do not want on it

    I have an Ipad that i have deleted apps on but they were saved on my icloud account. I want to know how i get onto my icloud account to delete them off of that and how to do it. thanks

  • No able to create TO in background with transaction LB10

    Scenario: 1) LP21 to create Repleninshment TRs for fix bin 2) LB10 to convert the TRs to TOs Situation: When I click on create TO in foreground, following by F6 (stock removal background) it follows my search strategy and it works. BUT when I select