ICEfaces
  1. ICEfaces
  2. ICE-2152

User Session Expired when re-hot-deploying Liferay portlets

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.6
    • Fix Version/s: 1.7.1
    • Component/s: None
    • Labels:
      None
    • Environment:
      Liferay 4.3.2 / Tomcat 6.0.13
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      This is *kind of* a workaround, but only in the case of development (circumstance#1 listed above). If you click on the "Home" tab to go to your Liferay portal home page, then re-hot-deploy, and then visit the page with the ICEfaces portlet again, it seems to work OK.

      But this is by no means a workaround in circumstance#2, because you can't rely on employees/customers to know that they need to do this.
      Show
      This is *kind of* a workaround, but only in the case of development (circumstance#1 listed above). If you click on the "Home" tab to go to your Liferay portal home page, then re-hot-deploy, and then visit the page with the ICEfaces portlet again, it seems to work OK. But this is by no means a workaround in circumstance#2, because you can't rely on employees/customers to know that they need to do this.

      Description

      This is very easy to reproduce:

      1. Download Liferay 4.3.2 / Tomcat 6.0.13 bundle and extract

      2. Download the sample-icefaces-sun-portlet from the Liferay website

      3. COPY (don't move) the sample-icefaces-sun-portlet in your $HOME/liferay/deploy folder (hot deploy folder)

      4. Verify in the Tomcat console that the portlet plugin extracts and registers itself

      5. Startup IE7, and add the portlet to a page (and keep viewing the page)

      6. Repeat step #3 and #4

      7. Click Reload button

      At this point you should get the "User Session Expired" error message, and the only way to fix it is to restart Tomcat.

      Now this is a problem under two circumstances:

      1. When developers are creating ICEfaces portlets, they often want to incrementally test their changes. The way to do this in Liferay is to keep re-hot-deploying the portlet, but the "User Session Expired" error message is not exactly thruthful, in that the user is still able to visit other portal pages and continue to use Liferay.

      2. When Portal administrators download new versions of Liferay portlet plugins, and want to deploy them to their employees/customers in their intranet. But Portal admins aren't always in a position where they can restart Tomcat, because it might be in the middle of a work day, or a mission-critical system.

        Issue Links

          Activity

          Repository Revision Date User Message
          ICEsoft Public SVN Repository #16615 Thu May 08 15:44:52 MDT 2008 mircea.toma Backport fixes for ICE-2152
          Files Changed
          Commit graph MODIFY /icefaces/branches/icefaces-1.7/icefaces/bridge/src/connection.js
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #16588 Mon May 05 17:44:50 MDT 2008 mircea.toma Shutdown bridge on HTTP 503 errors.
          ICE-2152
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/connection.js
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #16272 Fri Apr 04 10:27:36 MDT 2008 mircea.toma Rename method.
          ICE-2152
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/MainSessionBoundServlet.java
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #16262 Thu Apr 03 18:09:23 MDT 2008 mircea.toma Wait for bridge instances to confirm their shutdown before invalidating the session.
          ICE-2152
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/MainSessionBoundServlet.java
          Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/connection.async.js
          Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/application.js
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/SessionDispatcher.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/InterceptingServletSession.java
          Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/common/ServerProxy.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/portlet/InterceptingPortletSession.java
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #15075 Thu Nov 01 16:20:48 MDT 2007 mircea.toma Fix mistake.
          ICE-2152, ICE-2137
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/SessionDispatcher.java
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #15068 Thu Nov 01 12:07:05 MDT 2007 mircea.toma Create sessions bound servlets lazily.

          ICE-2152, ICE-2137
          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/servlet/MainServlet.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/core/SingleViewServer.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/SessionDispatcher.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/MultiViewServer.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/View.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ViewBoundServer.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/portlet/PortletExternalContext.java

            People

            • Assignee:
              Unassigned
              Reporter:
              Neil Griffin
            • Votes:
              4 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: