2 Replies Latest reply: Feb 6, 2012 2:25 PM by Nottallah RSS

    JSP Servlet Error......HELP!

    Nottallah
      Recently I dont know what changed in our app.....i really have no idea why this is happening....

      Production seems to be fine but the new bundle is effected:

      1- user A logs on to app and all is fine.....
      2- user B logs on to app after user A ....
      3- user A can not click or do anything......User B can control the app and click and use it.
      4- If user A refreshes the page the app works for User but now USER B can not use it....

      Log only Shows

      <ServletContext-/appName> <BEA-000000> <JspServlet error: Servlet unable to dispatch to the following requested page: The following exception occurred:java.lang.IllegalStateException: Failed to locate a facet to be relocated. The component must have been removed from the component tree when it should not have been. Expected to find the component under component with client ID "pt1" with relative search path "pa1".>


      I have no idea why this is happening ......

      Please shed some light or maybe ideas.....

      Thanks Guys!
        • 1. Re: JSP Servlet Error......HELP!
          Shay Shmeltzer-Oracle
          Sounds like something is messed up with the scope of some of your beans.
          Possibly there is a bean that is in application scope instead of sessions scope, and then when one user enters in it overwrites what the other user had done.
          Are you using Oracle ADF's security to manage user login?
          • 2. Re: JSP Servlet Error......HELP!
            Nottallah
            THANKS FOR THE IDEAS BUT IN MY APP I HAVE NO "APPLICATION SCOPE" BEANS.

            I am Using the ADF security in my app where i have login.jspx for logging on and i use it for error page as well.

            I did find the following:

            I found the Problem to be in the WEB.xml file.

            there is a Default Setting :

            <context-param>
            <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
            <param-value>client</param-value>
            </context-param>


            BY Default the ADF sets this to CLIENT. I tried to set it to Server and it works however ADF sets it back to client automatically

            The default is to have token based saving on the CLIENT but for some reason that was not working.

            I changed the default from "token" to "aLL" and all is well again.


            <context-param>
            <param-name>org.apache.myfaces.trinidad.CLIENT_STATE_METHOD</param-name>
            <param-value>all</param-value>
            </context-param>


            I DO NOT KNOW WHY ADF IS COMPLAINING WHEN ALL OF OUR PRODUCTION APPS IN THE PAST YEAR HAD DEFAULT SETTINGS!

            PLEASE HELP!