ICEfaces
  1. ICEfaces
  2. ICE-3784

ICEfaces does not support sub context redirect

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8
    • Fix Version/s: 1.8
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      All
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      The workaround is to reduce 3 apps into two: merge the first two, like below:

      <?xml version="1.0" encoding="UTF-8"?>
      <application xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" version="1.4">
        <description>BNNP ear</description>
        <display-name>bnnp-ear</display-name>

        <!?Move the filter into the second app, I guess ICEFaces does not support sub context redirect
        <module>
          <web>
            <web-uri>url-filter-1.0-SNAPSHOT.war</web-uri>
            <context-root>/BNNP-QA</context-root>
          </web>
        </module>
        ?

        <module>
          <web>
            <web-uri>bnnp-ui-1.0-SNAPSHOT.war</web-uri>
            <context-root>/BNNP-QA</context-root>
          </web>
        </module>

        <module>
          <web>
            <web-uri>bnnp-mobile-ui-1.0-SNAPSHOT.war</web-uri>
            <context-root>/BNNP-QA/MOBILE</context-root>
          </web>
        </module>

      </application>
      Show
      The workaround is to reduce 3 apps into two: merge the first two, like below: <?xml version="1.0" encoding="UTF-8"?> <application xmlns=" http://java.sun.com/xml/ns/j2ee " xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation=" http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd " version="1.4">   <description>BNNP ear</description>   <display-name>bnnp-ear</display-name>   <!?Move the filter into the second app, I guess ICEFaces does not support sub context redirect   <module>     <web>       <web-uri>url-filter-1.0-SNAPSHOT.war</web-uri>       <context-root>/BNNP-QA</context-root>     </web>   </module>   ?   <module>     <web>       <web-uri>bnnp-ui-1.0-SNAPSHOT.war</web-uri>       <context-root>/BNNP-QA</context-root>     </web>   </module>   <module>     <web>       <web-uri>bnnp-mobile-ui-1.0-SNAPSHOT.war</web-uri>       <context-root>/BNNP-QA/MOBILE</context-root>     </web>   </module> </application>

      Description

      Basically we have one EAR file, the structure is like below:

      <?xml version="1.0" encoding="UTF-8"?>
      <application xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" version="1.4">
        <description>BNNP ear</description>
        <display-name>bnnp-ear</display-name>

        <module>
          <web>
            <web-uri>url-filter-1.0-SNAPSHOT.war</web-uri>
            <context-root>/BNNP-QA</context-root>
          </web>
        </module>

        <module>
          <web>
            <web-uri>bnnp-ui-1.0-SNAPSHOT.war</web-uri>
            <context-root>/BNNP-QA/DESKTOP</context-root>
          </web>
        </module>

        <module>
          <web>
            <web-uri>bnnp-mobile-ui-1.0-SNAPSHOT.war</web-uri>
            <context-root>/BNNP-QA/MOBILE</context-root>
          </web>
        </module>

      </application>

      The url-filter application will decide where to redirect the incoming http request based on the user-agent http header. If it is from a handheld device, it will redirect to /BNNP-QA/MOBILE, otherwise to /BNNP-QA/DESKTOP. Of these, only the desktop application is using the ICEFaces framework. Now the problem is that for some reason, when the iced2d.js javascript posts the request to the ICEFaces block servlet when the page is loaded, it removes the "/" between BNNP-QA and DESKTOP, so that the context root becomes /BNNP-QADESKTOP which is obviously wrong and subsequently causes a "Network Connection Interrupted" every 3 minutes.


        Activity

        Repository Revision Date User Message
        ICEsoft Public SVN Repository #20925 Wed Mar 10 15:51:20 MST 2010 mark.collette Support 8080 : Backport ICE-3784
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/patches/SF8080/icefaces/core/src/com/icesoft/faces/context/DOMResponseWriter.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #18675 Thu Mar 26 17:24:54 MDT 2009 deryk.sinotte ICE-3784: Removed spurious System.out
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/DOMResponseWriter.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #18674 Thu Mar 26 16:47:00 MDT 2009 deryk.sinotte ICE-3784: Modified algorithm for massaging the context path so that slashes were not removed
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/DOMResponseWriter.java

          People

          • Assignee:
            Unassigned
            Reporter:
            Tyler Johnson
          • Votes:
            1 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: