10 Replies Latest reply: Nov 26, 2012 11:46 AM by Shay Shmeltzer-Oracle RSS

    Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1

    Sujay Patil
      Hello,

      I am trying to run a Oracle ADF application with Spring Webflow 2.3.1. I am using Oracle ADF 11.1.2.3.0 + JSF 2.0 + Spring Web flow 2.3.1. I am able to run the same application with JSF 2.0. When I am just adding Oracle ADF jars and configuration related to it, I am facing issue in launching the page. I am pretty sure that this issue is coming only when, I am adding Oracle ADF to application.

      I am getting below exception. Please let me know how can I resolve this issue.

      java.lang.IllegalStateException: null windowId
           at oracle.adfinternal.view.faces.webapp.rich.RichWindowManager._storeLoopbackId(RichWindowManager.java:1453)
           at oracle.adfinternal.view.faces.webapp.rich.RichWindowManager.updateRedirectURI(RichWindowManager.java:1233)
           at oracle.adfinternal.view.faces.config.rich.DetectRedirect.redirect(DetectRedirect.java:40)
           at javax.faces.context.ExternalContextWrapper.redirect(ExternalContextWrapper.java:462)
           at javax.faces.context.ExternalContextWrapper.redirect(ExternalContextWrapper.java:462)
           at oracle.adf.view.rich.context.UriManagerBase.addQueryParameters(UriManagerBase.java:44)
           at oracle.adfinternal.view.faces.webapp.rich.UriManagerImpl.addQueryParameters(UriManagerImpl.java:29)
           at oracle.adfinternal.controller.util.AdfvInterfaceImpl.addQueryParameters(AdfvInterfaceImpl.java:205)
           at oracle.adfinternal.controller.state.ControllerState.initializeUrl(ControllerState.java:715)
           at oracle.adfinternal.controller.state.ControllerState.synchronizeStatePart2(ControllerState.java:473)
           at oracle.adfinternal.controller.application.SyncNavigationStateListener.afterPhase(SyncNavigationStateListener.java:59)
           at oracle.adfinternal.controller.lifecycle.ADFLifecycleImpl$PagePhaseListenerWrapper.afterPhase(ADFLifecycleImpl.java:530)
           at oracle.adfinternal.controller.lifecycle.LifecycleImpl.internalDispatchAfterEvent(LifecycleImpl.java:120)
           at oracle.adfinternal.controller.lifecycle.LifecycleImpl.dispatchAfterPagePhaseEvent(LifecycleImpl.java:168)
           at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.dispatchAfterPagePhaseEvent(ADFPhaseListener.java:131)
           at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:74)
           at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.afterPhase(ADFLifecyclePhaseListener.java:53)
           at org.springframework.faces.webflow.JsfUtils.notifyAfterListeners(JsfUtils.java:41)
           at org.springframework.faces.mvc.JsfView.renderMergedOutputModel(JsfView.java:79)
           at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)
           at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1208)
           at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:992)
           at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:939)
           at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
           at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:915)
           at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:804)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
           at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:789)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
           at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
           at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
           at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
           at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
           at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
           at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:183)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
           at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
           at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
           at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
           at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
           at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:90)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
           at java.security.AccessController.doPrivileged(Native Method)
           at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
           at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
           at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
           at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
           at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
           at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
           at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
           at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
           at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
           at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
           at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
           at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
           at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
           at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)


      - Sujay
        • 1. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
          Timo Hahn
          ADF uses it's own controller for the adf work flow. Chance is that one or both are configured in a wrong way. I'm not sure they can work together.
          I wonder what you try to get out of the application using two flow controllers.

          Timo
          • 2. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
            Sujay Patil
            Is there any way to handle this exception? I want to use Latest ADF version with Spring webflow. I tried JSF 2.0 and it works properly with Spring Webflow.

            - Sujay
            • 3. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
              Shay Shmeltzer-Oracle
              I would suggest that you compare the web.xml you have from your JSF 2.0 project that doesn't have ADF Faces to the web.xml that is used for the ADF Faces components demo and see what the difference is.
              might help you locate the missing item.
              http://www.oracle.com/technetwork/developer-tools/adf/documentation/adf-faces-rc-demo-083799.html
              • 4. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
                Sujay Patil
                I compared my application's web.xml with web.xml from latest ADF Demo application. I updated my web.xml to add missing tags, but still I am getting same error. I even checked other configuration file. There is no significant change that can resolve this issue. I am really desperate to resolve this issue.

                - Sujay
                • 6. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
                  Sujay Patil
                  What do you mean by source? Do you want me to upload my sample application?

                  - Sujay
                  • 7. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
                    Shay Shmeltzer-Oracle
                    Can you post the code of the specific JSF page that throws that error?
                    • 8. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
                      Sujay Patil
                      HelloWorld.jspx
                      <?xml version='1.0' encoding='UTF-8'?>
                      <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
                                xmlns:tiles="http://tiles.apache.org/tags-tiles" xmlns:f="http://java.sun.com/jsf/core"
                                xmlns:trh="http://myfaces.apache.org/trinidad/html">
                          <jsp:directive.page contentType="text/html;charset=UTF-8"/>
                          <tiles:importAttribute scope="request"/>    
                          <f:view>
                              <af:document title="Hello World" id="document">
                                  <af:form id="adfForm" usesUpload="true">
                                      <af:panelStretchLayout dimensionsFrom="parent" topHeight="40">
                                          <f:facet name="top">
                                              <af:panelGroupLayout layout="scroll" id="ptpgl1">
                                                  <f:subview id="topView">
                                                      <tiles:insertAttribute name="header" flush="false"/>
                                                      <!--jsp:include page="/master/header.jspx"/-->
                                                  </f:subview>
                                              </af:panelGroupLayout>
                                          </f:facet>
                                          <f:facet name="center">
                                              <af:panelStretchLayout id="contentBody" dimensionsFrom="auto">
                                                  <f:facet name="center">
                                                      <af:panelSplitter orientation="horizontal" splitterPosition="185" firstBorder="all"
                                                                        secondBorder="all" styleClass="AFStretchWidth" dimensionsFrom="auto">
                                                          <f:facet name="first">
                                                              <f:subview id="firstView">
                                                                  <tiles:insertAttribute name="quickLinks" flush="false"/>
                                                                  <!--jsp:include page="/quickLinks/quickLinks.jspx"/-->
                                                              </f:subview>
                                                          </f:facet>
                                                          <f:facet name="second">
                                                              <f:subview id="secView">
                                                                  <tiles:insertAttribute name="client-area" flush="false"/>
                                                                  <!--jsp:include page="/test/testComponents.jspx"/-->
                                                              </f:subview>
                                                          </f:facet>
                                                      </af:panelSplitter>
                                                  </f:facet>
                                              </af:panelStretchLayout>
                                          </f:facet>
                                      </af:panelStretchLayout>
                                  </af:form>
                              </af:document>
                          </f:view>
                      </jsp:root>
                      • 9. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
                        Shay Shmeltzer-Oracle
                        I would suggest that first you verify that the simplest ADF Faces page works without injecting tiles.
                        So something like:
                        <?xml version='1.0' encoding='UTF-8'?>
                        <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:f="http://java.sun.com/jsf/core"
                                  xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
                            <jsp:directive.page contentType="text/html;charset=UTF-8"/>
                            <f:view>
                                <af:document title="untitled1.jspx" id="d1">
                                    <af:form id="f1">
                                        <af:inputText label="Label 1" id="it1"/>
                                    </af:form>
                                </af:document>
                            </f:view>
                        </jsp:root>
                        This will help you figure out if the ADF Faces setting in your project work. Once they do go to the next step and start adding the other technologies.
                        • 10. Re: Exception while Launching Oracle ADF 11.1.2.3 with Spring Web Flow 2.3.1
                          Sujay Patil
                          I have done that. I get this error even if there is no Tiles in application.

                          - Sujay