Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 2.0-Alpha3
-
Fix Version/s: 3.0
-
Component/s: Push Library
-
Labels:None
-
Environment:ICEfaces 2 ICEpush 2 portlets portal
-
ICEsoft Forum Reference:
Description
You can easily reproduce the problem by running the chat-portlet example on Liferay. Only once instance is needed on a portal page. Bring up up the initial login panel and create a handle then click the button. This will start push and you can see in the client the tight request loop for getting the browser id.
Adding some logging shows odd behaviour when the BrowserDispatcher.service method is called. The first time through, no servlet has been registered yet:
BrowserDispatcher.service:
browserId : 1gu01haq9
dispatcher : org.icepush.servlet.MainServlet$1@12773a6
servlets : {}
24-Oct-2011 7:08:05 PM org.icepush.servlet.EnvironmentAdaptingServlet <init>
INFO: Adapting to Thread Blocking environment
24-Oct-2011 7:08:05 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init>
FINEST: New browser detected, assigning ID '1gu01haq9'.
But the next request that comes in has a different browser id in the cookie which doesn't match the one we originally stored:
BrowserDispatcher.service:
browserId : 1gu5ua3fe
dispatcher : org.icepush.servlet.MainServlet$1@12773a6
servlets : {1gu01haq9=org.icepush.servlet.BrowserDispatcher$BrowserEntry@18476474}
24-Oct-2011 7:08:06 PM org.icepush.servlet.EnvironmentAdaptingServlet <init>
INFO: Adapting to Thread Blocking environment
24-Oct-2011 7:08:06 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init>
FINEST: New browser detected, assigning ID '1gu5ua3fe'.
This cycle is just repeated where the new cookie value coming in does not match any of the values in the map of servlets.
Adding some logging shows odd behaviour when the BrowserDispatcher.service method is called. The first time through, no servlet has been registered yet:
BrowserDispatcher.service:
browserId : 1gu01haq9
dispatcher : org.icepush.servlet.MainServlet$1@12773a6
servlets : {}
24-Oct-2011 7:08:05 PM org.icepush.servlet.EnvironmentAdaptingServlet <init>
INFO: Adapting to Thread Blocking environment
24-Oct-2011 7:08:05 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init>
FINEST: New browser detected, assigning ID '1gu01haq9'.
But the next request that comes in has a different browser id in the cookie which doesn't match the one we originally stored:
BrowserDispatcher.service:
browserId : 1gu5ua3fe
dispatcher : org.icepush.servlet.MainServlet$1@12773a6
servlets : {1gu01haq9=org.icepush.servlet.BrowserDispatcher$BrowserEntry@18476474}
24-Oct-2011 7:08:06 PM org.icepush.servlet.EnvironmentAdaptingServlet <init>
INFO: Adapting to Thread Blocking environment
24-Oct-2011 7:08:06 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init>
FINEST: New browser detected, assigning ID '1gu5ua3fe'.
This cycle is just repeated where the new cookie value coming in does not match any of the values in the map of servlets.
Issue Links
- blocks
-
ICE-7190 Enable support for portlets with MyFaces 2
- Closed
Activity
Deryk Sinotte
created issue -
Deryk Sinotte
made changes -
Field | Original Value | New Value |
---|---|---|
Salesforce Case | [] | |
Fix Version/s | 2.1 [ 10259 ] | |
Fix Version/s | 2.0-Beta [ 10232 ] | |
Assignee Priority | P1 | |
Description |
You can easily reproduce the problem by running the chat-portlet example on Liferay. Only once instance is needed on a portal page. Bring up up the initial login panel and create a handle then click the button. This will start push and you can see in the client the tight request loop for getting the browser id. Adding some logging shows odd behaviour when the BrowserDispatcher.service method is called. The first time through, no servlet has been registered yet: BrowserDispatcher.service: browserId : 1gu01haq9 dispatcher : org.icepush.servlet.MainServlet$1@12773a6 servlets : {} 24-Oct-2011 7:08:05 PM org.icepush.servlet.EnvironmentAdaptingServlet <init> INFO: Adapting to Thread Blocking environment 24-Oct-2011 7:08:05 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init> FINEST: New browser detected, assigning ID '1gu01haq9'. But the next request that comes in has a different browser id in the cookie which doesn't match the one we originally stored: BrowserDispatcher.service: browserId : 1gu5ua3fe dispatcher : org.icepush.servlet.MainServlet$1@12773a6 servlets : {1gu01haq9=org.icepush.servlet.BrowserDispatcher$BrowserEntry@18476474} 24-Oct-2011 7:08:06 PM org.icepush.servlet.EnvironmentAdaptingServlet <init> INFO: Adapting to Thread Blocking environment 24-Oct-2011 7:08:06 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init> FINEST: New browser detected, assigning ID '1gu5ua3fe'. |
You can easily reproduce the problem by running the chat-portlet example on Liferay. Only once instance is needed on a portal page. Bring up up the initial login panel and create a handle then click the button. This will start push and you can see in the client the tight request loop for getting the browser id. Adding some logging shows odd behaviour when the BrowserDispatcher.service method is called. The first time through, no servlet has been registered yet: BrowserDispatcher.service: browserId : 1gu01haq9 dispatcher : org.icepush.servlet.MainServlet$1@12773a6 servlets : {} 24-Oct-2011 7:08:05 PM org.icepush.servlet.EnvironmentAdaptingServlet <init> INFO: Adapting to Thread Blocking environment 24-Oct-2011 7:08:05 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init> FINEST: New browser detected, assigning ID '1gu01haq9'. But the next request that comes in has a different browser id in the cookie which doesn't match the one we originally stored: BrowserDispatcher.service: browserId : 1gu5ua3fe dispatcher : org.icepush.servlet.MainServlet$1@12773a6 servlets : {1gu01haq9=org.icepush.servlet.BrowserDispatcher$BrowserEntry@18476474} 24-Oct-2011 7:08:06 PM org.icepush.servlet.EnvironmentAdaptingServlet <init> INFO: Adapting to Thread Blocking environment 24-Oct-2011 7:08:06 PM org.icepush.servlet.BrowserDispatcher$BrowserEntry <init> FINEST: New browser detected, assigning ID '1gu5ua3fe'. This cycle is just repeated where the new cookie value coming in does not match any of the values in the map of servlets. |
Assignee | Mircea Toma [ mircea.toma ] |
Ken Fyten
made changes -
Salesforce Case | [] | |
Affects | [Documentation (User Guide, Ref. Guide, etc.)] |
Deryk Sinotte
made changes -
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #26201 | Wed Nov 02 09:09:03 MDT 2011 | deryk.sinotte | |
Files Changed | ||||
MODIFY
/icepush/trunk/icepush/core/src/main/java/org/icepush/http/standard/Cookie.java
MODIFY /icepush/trunk/icepush/core/src/main/java/org/icepush/http/standard/RequestProxy.java MODIFY /icepush/trunk/icepush/core/src/main/java/org/icepush/servlet/ServletRequestResponse.java MODIFY /icepush/trunk/icepush/core/src/main/java/org/icepush/http/Request.java |
Deryk Sinotte
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Affects | [Documentation (User Guide, Ref. Guide, etc.)] | |
Resolution | Fixed [ 1 ] | |
Assignee | Mircea Toma [ mircea.toma ] | Deryk Sinotte [ deryk.sinotte ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Assignee Priority | P1 |
Assigning to Mircea.