ICEfaces
  1. ICEfaces
  2. ICE-1249

Refactor com.icesoft.faces.webapp.xmlhttp package to improve integration

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.5
    • Fix Version/s: 1.6DR#1, 1.6
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      Operating System: All
      Platform: Macintosh

      Description

      Implement com.icesoft.faces.webapp.xmlhttp package in a modular fashion. Work towards easy
      integration with other platforms besides Servlet based.

        Activity

        Mircea Toma created issue -
        Icefaces Administrator made changes -
        Field Original Value New Value
        issue.field.bugzillaimportkey 1321 12518
        Ken Fyten made changes -
        Affects Version/s 1.5 [ 10027 ]
        Affects Version/s unspecified [ 10021 ]
        Ken Fyten made changes -
        Priority Major [ 3 ] Minor [ 4 ]
        Ken Fyten made changes -
        Assignee Mircea Toma [ mircea.toma ]
        Ken Fyten made changes -
        Fix Version/s 1.6 [ 10031 ]
        Assignee Priority P2
        Assignee Mircea Toma [ mircea.toma ]
        Ken Fyten made changes -
        Summary Refactor com.icesoft.faces.webapp.xmlhttp package Refactor com.icesoft.faces.webapp.xmlhttp package to improve integration
        Assignee Priority P2 P1
        Priority Minor [ 4 ] Major [ 3 ]
        Hide
        Greg Dick added a comment -

        In the head, there were various issues with the Seam example applications. The JSF lifecycle was not quite as it was supposed to be, and the Context objects that Seam uses to hold application state were incorrectly terminated. It turns out that the mechanisms in place to clear out these contexts were not preserved correctly, and that things were wrong.

        The D2DViewHandler code just keeps the viewRoot in the FacesContext. This is likely wrong, as it subverts state management, but so it goes. The D2DViewHandler needs to know if the current request is a faces or non-faces request for the sake of properly creating a viewRoot as suggested in the JSF spec.

        We used to set a flag in the persistentFacesServlet to inform the D2DViewHandler that the view should not be restored, since a new one should be created, but that code didn't work in the new environment. This has now been fixed.

        Also the EventContext was not being cleared properly because the code to do that in renderResponse in the D2DViewHandler was overridden by the FaceletsViewHandler. Not sure when this changed, but I moved the code to the renderView method, which should be common to all.

        Sending ServletExternalContext.java
        Committed revision 13356.
        Sending ServletView.java
        Committed revision 13355.
        Sending D2DViewHandler.java
        Committed revision 13357.

        Show
        Greg Dick added a comment - In the head, there were various issues with the Seam example applications. The JSF lifecycle was not quite as it was supposed to be, and the Context objects that Seam uses to hold application state were incorrectly terminated. It turns out that the mechanisms in place to clear out these contexts were not preserved correctly, and that things were wrong. The D2DViewHandler code just keeps the viewRoot in the FacesContext. This is likely wrong, as it subverts state management, but so it goes. The D2DViewHandler needs to know if the current request is a faces or non-faces request for the sake of properly creating a viewRoot as suggested in the JSF spec. We used to set a flag in the persistentFacesServlet to inform the D2DViewHandler that the view should not be restored, since a new one should be created, but that code didn't work in the new environment. This has now been fixed. Also the EventContext was not being cleared properly because the code to do that in renderResponse in the D2DViewHandler was overridden by the FaceletsViewHandler. Not sure when this changed, but I moved the code to the renderView method, which should be common to all. Sending ServletExternalContext.java Committed revision 13356. Sending ServletView.java Committed revision 13355. Sending D2DViewHandler.java Committed revision 13357.
        Mircea Toma made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13378 Fri Mar 09 17:10:47 MST 2007 mircea.toma Merge back the branch used for refactoring com.icesoft.faces.webapp.http package. Issue described in ICE-1249.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/SendUpdates.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/DOMResponseWriter.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/MainServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/DOMContext.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/SetCookie.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ThreadBlockingAdaptingServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/RequestProxy.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/NOOP.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/ContinuationResponseState.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/CommandQueue.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/Queue.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/Request.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/SendUpdatedViews.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/JAXPSerializer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/PortletBlockingResponseState.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/BlockingResponseState.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ServletRequestMap.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/SingleViewServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/facelets/D2DFaceletViewHandler.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/NotModifiedHandler.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/BridgeExternalContext.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/Command.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/NotFoundHandler.java
        Commit graph DEL /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/AdapterServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/BridgeFacesContext.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ResourceServer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/PushServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/RedirectOnJSBlocked.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/CompressingServer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/PushServer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/PathDispatcherServer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ServletContextConfiguration.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/EnvironmentAdaptingServlet.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/Redirect.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/PersistentFacesState.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ServletRequestResponse.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ServletFacesContext.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/NormalModeSerializer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/OKHandler.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ServeCSSResource.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/CacheControlledServer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ReceiveSendUpdates.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/Macro.java
        Commit graph DEL /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/UpdateManager.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/MainSessionBoundServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/FacesContextFactoryImpl.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ServeBridgeJSCode.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/BlockingServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/Response.java
        Commit graph REPLACE /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/UpdateElements.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/PersistentFacesPortlet.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ViewQueue.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/xmlhttp/ResponseState.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ContinuationAdaptingServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/MultiViewServlet.java
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/PushModeSerializer.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/FixedXMLContentHandler.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/standard/ServerErrorHandler.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ServeExtraJSCode.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13379 Fri Mar 09 17:11:45 MST 2007 mircea.toma Merge back the branch used for refactoring com.icesoft.faces.webapp.http package. Issue described in ICE-1249.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/application/ProductInfo.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ServletExternalContext.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/ServletView.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/application/D2DViewHandler.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/DOMSerializer.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13380 Fri Mar 09 17:12:03 MST 2007 mircea.toma Merge back the branch used for refactoring com.icesoft.faces.webapp.http package. Issue described in ICE-1249.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/command.js
        Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/application.js
        Mircea Toma made changes -
        Status In Progress [ 3 ] Open [ 1 ]
        Hide
        Mircea Toma added a comment -

        Finished major refactoring of the com.icesoft.faces.webapp.http package.

        Show
        Mircea Toma added a comment - Finished major refactoring of the com.icesoft.faces.webapp.http package.
        Mircea Toma made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s 1.6DR#1 [ 10035 ]
        Fix Version/s 1.6 [ 10031 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13519 Thu Apr 12 12:23:28 MDT 2007 mircea.toma Implement set-cookie command -- ICE-1249.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/command.js
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/SetCookie.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13523 Thu Apr 12 13:43:07 MDT 2007 mircea.toma Serialize expiry attribute properly -- ICE-1249.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/command/SetCookie.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13539 Fri Apr 13 11:06:40 MDT 2007 mircea.toma Use the same default value for 'synchronousUpdate' parameter -- ICE-1249.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/MainSessionBoundServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ServeBridgeJSCode.java
        Ken Fyten made changes -
        Issue Type Bug [ 1 ] Improvement [ 4 ]
        Ken Fyten made changes -
        Fix Version/s 1.6 [ 10031 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Priority P1
        Assignee Mircea Toma [ mircea.toma ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Mircea Toma
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: