ICEfaces
  1. ICEfaces
  2. ICE-4524

Servlet 3.0 AsyncContext support

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-Alpha1
    • Fix Version/s: 2.0-Alpha2, 2.0.0
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      ICEfaces

      Description


      ICEfaces should take advantage of Servlet 3.0 asynchronous features.

        Activity

        Ted Goddard created issue -
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #18919 Fri May 22 14:37:22 MDT 2009 ted.goddard initial Servlet 3.0 async support (ICE-4524)
        Files Changed
        Commit graph ADD /icefaces/scratchpads/glimmer/lib/javax.servlet.jar
        Commit graph ADD /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/servlet/AsyncAdaptingServlet.java
        Commit graph DEL /icefaces/scratchpads/glimmer/lib/servlet-api.jar
        Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/servlet/EnvironmentAdaptingServlet.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #18932 Tue May 26 15:26:47 MDT 2009 ted.goddard working Servlet 3.0 async support (ICE-4524)
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/servlet/AsyncAdaptingServlet.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #18933 Tue May 26 16:15:12 MDT 2009 ted.goddard removing System.out (ICE-4524)
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/servlet/AsyncAdaptingServlet.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #18977 Thu Jun 18 10:50:43 MDT 2009 ted.goddard updated javax.servlet.jar reference (ICE-4524)
        Files Changed
        Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/samples/component-showcase/build.xml
        Hide
        Ted Goddard added a comment -

        It's important to test the Servlet 3.0 push features of ICEfaces 2.0 even though the ultimate approach will be to have a standalone notification service: the usage pattern will be similar and it is important that shipping Servlet 3.0 containers are stable under ICEfaces.

        GlassFish and Jetty provide Servlet 3.0 implementations, and a Tomcat branch does contain the Servlet 3.0 APIs.

        (Initial testing will require building and troubleshooting of application servers from source code or nightly binaries, so this is not likely effective as a QA task.)

        Show
        Ted Goddard added a comment - It's important to test the Servlet 3.0 push features of ICEfaces 2.0 even though the ultimate approach will be to have a standalone notification service: the usage pattern will be similar and it is important that shipping Servlet 3.0 containers are stable under ICEfaces. GlassFish and Jetty provide Servlet 3.0 implementations, and a Tomcat branch does contain the Servlet 3.0 APIs. (Initial testing will require building and troubleshooting of application servers from source code or nightly binaries, so this is not likely effective as a QA task.)
        Ted Goddard made changes -
        Field Original Value New Value
        Salesforce Case []
        Fix Version/s 2.0 [ 10032 ]
        Assignee Deryk Sinotte [ deryk.sinotte ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19529 Wed Oct 28 14:13:18 MDT 2009 ted.goddard Servlet 3.0 only (ICE-4524)
        Files Changed
        Commit graph DEL /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/servlet/GlassFishAdaptingServlet.java
        Commit graph DEL /icefaces/scratchpads/glimmer/lib/grizzly-comet.jar
        Commit graph DEL /icefaces/scratchpads/glimmer/lib/jsf-portlet-bridge2-api.jar
        Commit graph DEL /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/servlet/JettyAdaptingServlet.java
        Commit graph DEL /icefaces/scratchpads/glimmer/lib/jsf-portlet-bridge2-impl.jar
        Commit graph DEL /icefaces/scratchpads/glimmer/lib/jetty-util-6.0.1.jar
        Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/servlet/EnvironmentAdaptingServlet.java
        Ken Fyten made changes -
        Fix Version/s 2.0-Alpha1 [ 10213 ]
        Fix Version/s 2.0-Beta [ 10032 ]
        Affects Version/s 2.0-Alpha1 [ 10213 ]
        Affects Version/s 2.0-Beta [ 10032 ]
        Ken Fyten made changes -
        Fix Version/s 2.0-Alpha2 [ 10214 ]
        Fix Version/s 2.0-Alpha1 [ 10213 ]
        Hide
        Ted Goddard added a comment -

        Please propagate AsyncAdaptingServlet.java to snowplow.

        To enable async support in Servlet 3.0, use the following web.xml modifications:

        -<web-app version="2.5"
        +<web-app version="3.0"
        xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

        <display-name>Auction</display-name>
        <description>
        @@ -45,6 +45,7 @@
        <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        + <async-supported>true</async-supported>
        </servlet>

        Show
        Ted Goddard added a comment - Please propagate AsyncAdaptingServlet.java to snowplow. To enable async support in Servlet 3.0, use the following web.xml modifications: -<web-app version="2.5" +<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd "> + xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd "> <display-name>Auction</display-name> <description> @@ -45,6 +45,7 @@ <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> + <async-supported>true</async-supported> </servlet>
        Ted Goddard made changes -
        Assignee Deryk Sinotte [ deryk.sinotte ] Mircea Toma [ mircea.toma ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19913 Wed Dec 09 15:27:20 MST 2009 mircea.toma ICE-4524 Introduce Servlet 3.0 adapting servlet. Simplify EnvironmentAdaptingServlet.
        Files Changed
        Commit graph ADD /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/AsyncAdaptingServlet.java
        Commit graph MODIFY /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/BrowserBoundServlet.java
        Commit graph MODIFY /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/MainServlet.java
        Commit graph MODIFY /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/EnvironmentAdaptingServlet.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19915 Wed Dec 09 16:52:28 MST 2009 mircea.toma ICE-4524 Servlet 3.0 API
        Files Changed
        Commit graph MODIFY /scratchpads/snowplow/lib/servlet-api.jar
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19916 Wed Dec 09 16:53:37 MST 2009 mircea.toma ICE-4524 Send content-type since Glassfish won't autodetect it.
        Files Changed
        Commit graph MODIFY /scratchpads/snowplow/samples/basic/src/main/java/org/icepush/sample/basic/PageNotifier.java
        Hide
        Mircea Toma added a comment -

        Introduced Servlet 3.0 adapting servlet. Simplified EnvironmentAdaptingServlet by removing Glassfish specific detection and the use of factories for creating the matching adapting servlet.

        Show
        Mircea Toma added a comment - Introduced Servlet 3.0 adapting servlet. Simplified EnvironmentAdaptingServlet by removing Glassfish specific detection and the use of factories for creating the matching adapting servlet.
        Mircea Toma made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19917 Thu Dec 10 01:31:19 MST 2009 mircea.toma ICE-4524 Make sure 'complete' is called even if an exceptions occurs during response writing.
        Files Changed
        Commit graph MODIFY /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/AsyncAdaptingServlet.java
        Hide
        Mircea Toma added a comment -

        Need to remove the Jetty Continuations specific code.

        Show
        Mircea Toma added a comment - Need to remove the Jetty Continuations specific code.
        Mircea Toma made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #20126 Wed Jan 06 06:54:36 MST 2010 mircea.toma ICE-4524 Remove Jetty specific code.
        Files Changed
        Commit graph DEL /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/JettyAdaptingServlet.java
        Commit graph DEL /scratchpads/snowplow/lib/jetty-util.jar
        Commit graph MODIFY /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/MainServlet.java
        Commit graph MODIFY /scratchpads/snowplow/core/src/main/java/org/icepush/servlet/EnvironmentAdaptingServlet.java
        Hide
        Mircea Toma added a comment -

        Removed Jetty specific code. Only thread blocking and Servlet 3.0 ARP adaptations are used now.

        Show
        Mircea Toma added a comment - Removed Jetty specific code. Only thread blocking and Servlet 3.0 ARP adaptations are used now.
        Mircea Toma made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Ted Goddard added a comment -

        Would be useful if we could add the following annotation to FacesServlet:

        @WebServlet(asyncSupported=true)

        Show
        Ted Goddard added a comment - Would be useful if we could add the following annotation to FacesServlet: @WebServlet(asyncSupported=true)
        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:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: