ICEfaces
  1. ICEfaces
  2. ICE-5609

ICEfaces 2.0 compat SessionRenderer on non-JSF threads

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-Alpha2
    • Fix Version/s: 2.0-Alpha3, 2.0.0
    • Component/s: None
    • Labels:
      None
    • Environment:
      ICEfaces 2.0 compat
    • Affects:
      Compatibility/Configuration

      Description

      ICEfaces 2.0 compat SessionRenderer.render() currently fails when invoked from non-JSF threads.

        Activity

        Ted Goddard created issue -
        Ted Goddard made changes -
        Field Original Value New Value
        Assignee Ted Goddard [ ted.goddard ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #21204 Mon Apr 12 15:50:36 MDT 2010 mircea.toma ICE-5609 Store a PortableRenderer in a static field to be later used in render calls that are not initiated on JSF threads.
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/core/src/main/java/com/icesoft/faces/async/render/SessionRenderer.java
        Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/core/src/main/resources/META-INF/faces-config.xml
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #21207 Mon Apr 12 16:32:50 MDT 2010 mircea.toma ICE-5609 Add no-op PortableRenderer to avoid NPEs on application startup.
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/core/src/main/java/com/icesoft/faces/async/render/SessionRenderer.java
        Ken Fyten made changes -
        Assignee Ted Goddard [ ted.goddard ] Mircea Toma [ mircea.toma ]
        Ken Fyten made changes -
        Salesforce Case []
        Fix Version/s 2.0-Alpha3 [ 10032 ]
        Affects [Compatibility/Configuration]
        Affects Version/s 2.0-Alpha2 [ 10214 ]
        Hide
        Mircea Toma added a comment -

        Stored a PortableRenderer in a static field to be later used in render calls that are not initiated on JSF threads. The PortableRenderer instance is acquired using a system event listener. The listener is invoked on PostConstructApplicationEvent event which allows the code to get to the FacesContext instance as soon as possible during application startup.

        Show
        Mircea Toma added a comment - Stored a PortableRenderer in a static field to be later used in render calls that are not initiated on JSF threads. The PortableRenderer instance is acquired using a system event listener. The listener is invoked on PostConstructApplicationEvent event which allows the code to get to the FacesContext instance as soon as possible during application startup.
        Mircea Toma made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ted Goddard made changes -
        Assignee Mircea Toma [ mircea.toma ] Ted Goddard [ ted.goddard ]
        Hide
        Ted Goddard added a comment -

        Apparently Safari's "Re-open all windows from last session" is capable of assigning JIRAs automatically. (A new way to attack yourself with cross-site scripting.)

        Show
        Ted Goddard added a comment - Apparently Safari's "Re-open all windows from last session" is capable of assigning JIRAs automatically. (A new way to attack yourself with cross-site scripting.)
        Hide
        Ted Goddard added a comment -

        JSF startup is blocked if icepush.jar is not present (PushRenderer must need to classload PushContext). It may be sufficient to keep the PortableRenderer as an Object, or reflection may be required.

        Show
        Ted Goddard added a comment - JSF startup is blocked if icepush.jar is not present (PushRenderer must need to classload PushContext). It may be sufficient to keep the PortableRenderer as an Object, or reflection may be required.
        Ted Goddard made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Ted Goddard made changes -
        Assignee Ted Goddard [ ted.goddard ] Mircea Toma [ mircea.toma ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #21229 Wed Apr 14 16:14:48 MDT 2010 mircea.toma ICE-5609 Avoid referencing PortableRenderer class in static context so that application still works when ICEpush is not present.
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/core/src/main/java/com/icesoft/faces/async/render/SessionRenderer.java
        Hide
        Mircea Toma added a comment -

        Avoid referencing PortableRenderer class in static context so that application still works when ICEpush is not present.

        Show
        Mircea Toma added a comment - Avoid referencing PortableRenderer class in static context so that application still works when ICEpush is not present.
        Mircea Toma made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s 2.0.0 [ 10230 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

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

            Dates

            • Created:
              Updated:
              Resolved: