voyent
Messages posted by: thienp  XML
Profile for thienp -> Messages posted by thienp [17] Go to Page: 1, 2 Next 
Author Message
Hi Jack,

I'm using OC4J 10.1.3.3 container from Oracle. The AHS was deployed in servlet mode (i.e. not fronted by a web server). The browser really hangs. Even when I tried to kill it, it took some time (more than a minute) to go down.

If you want, I can try to gather materials needed to reproduce this issue (webapp, AHS, etc.). I have a patched version of icefaces-ahs.jar so that it can work with OC4J's JMS.
Hi Jack,

The "webapp" in this case is an ICEfaces application that utilizes Ajax push feature. Per recommendations from ICEfaces developer document, I also installed AHS for scalability purpose. When the ICEfaces application (not AHS) is restarted or redeployed, there are times (not necessarily all the time) the web browser (IE in this case) that previously communicated with the ICEfaces app would have a hard time reconnecting (if refresh is done) or closing down (if I try to close the browser). I am not sure if AHS is playing any part in this issue though.
Just a general observation about AHS. I don't know if anybody else seeing this same behavior.

If I have a web browser that sends requests to a ICEfaces webapp that utilizes Ajax push in conjunction with AHS, it seems that everytime the webapp is restarted, closing (or refreshing) the client web browser seems to take a long time, giving the "hung" browser impression. Often I find that it is better for me to just bring up a new instance of the web browser while at the same time closing the existing browser down. Is it normal? Is there a way to get around or remove this delay? Thanks.
Thank you for your help. I'll give it a try.
Scratch the last part about the same app in the same browser. That was caused by my "concurrentDOMviews" set to 'TRUE'. But the original problem (two different apps in the same browser) remains.

Feel like I'm talking to myself... :)
ICEfaces definitely gets the two sessions mixed up. Just to prove the point, I accessed the same web app from two different tabs within the same browser. From each tab, I logged in as *two** different users, e.g. "John" and "Mary". As soon as I logged "Mary" in as the second user and switched back to the first tab (i.e. "John"'s tab), all John's info that got displayed earlier is now replaced by Mary's. Would this be considered a serious bug?
Further investigation reveals that this problem only occurs if I open both applications in the same browser window (in this instance, two tabs in my IE browser). If I launch two separate instances of IE, they are working fine. Is it possible that somehow ICEfaces gets confused between the two sessions from these two separate webapps?
I have developed two web applications based on ICEfaces 1.7.0. They are bundled into the same EAR file and deployed to my application server (in this case, OC4J). Now, if I access either one of the webapps (but not both), everything works perfectly and is responsive. But as soon as both applications are accessed, they both become very sluggish. I just wonder if anyone has encountered this issue. Any pointer is greatly appreciated.
I'm using ICEfaces 1.7.0 DR2 with WebLogic 9.1 and ran into the exception listed below from the server when I attempted to access my webapp from browser. The ICEfaces immediately displayed "Session Expired" dialog box. Any help is greatly appreciated. Thanks.

java.lang.NullPointerException
at java.util.regex.Matcher.getTextLength(Matcher.java:1127)
at java.util.regex.Matcher.reset(Matcher.java:284)
at java.util.regex.Matcher.<init>(Matcher.java:205)
at java.util.regex.Pattern.matcher(Pattern.java:879)
at com.icesoft.faces.webapp.http.servlet.ServletRequestResponse.setHeader(ServletRequestResponse.java:156)
at com.icesoft.faces.webapp.http.common.ResponseProxy.setHeader(ResponseProxy.java:20)
at com.icesoft.faces.webapp.http.core.ServeCSSResource$1.respond(ServeCSSResource.java:32)
at com.icesoft.faces.webapp.http.common.standard.CacheControlledServer$EnhancedRequest$1.respond(CacheControlledServer.java:70)
at com.icesoft.faces.webapp.http.common.standard.CompressingServer$CompressingRequest$1.respond(CompressingServer.java:45)
at com.icesoft.faces.webapp.http.servlet.ServletRequestResponse.respondWith(ServletRequestResponse.java:147)
at com.icesoft.faces.webapp.http.common.standard.CompressingServer$CompressingRequest.respondWith(CompressingServer.java:42)
at com.icesoft.faces.webapp.http.common.standard.CacheControlledServer$EnhancedRequest.respondWith(CacheControlledServer.java:63)
at com.icesoft.faces.webapp.http.core.ServeCSSResource.service(ServeCSSResource.java:30)
at com.icesoft.faces.webapp.http.common.standard.CacheControlledServer.service(CacheControlledServer.java:46)
at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer$Matcher.serviceOnMatch(PathDispatcherServer.java:50)
at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:19)
at com.icesoft.faces.webapp.http.common.standard.CompressingServer.service(CompressingServer.java:26)
at com.icesoft.faces.webapp.http.core.ResourceServer.service(ResourceServer.java:30)
at com.icesoft.faces.webapp.http.servlet.BasicAdaptingServlet.service(BasicAdaptingServlet.java:16)
at com.icesoft.faces.webapp.http.servlet.PathDispatcher$Matcher.serviceOnMatch(PathDispatcher.java:52)
at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:29)
at com.icesoft.faces.webapp.http.servlet.MainServlet.service(MainServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:225)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:127)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:272)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:165)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3150)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:1973)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1880)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1310)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
I messed up again. I meant "SEMICOLON", not "COLON".
Sorry, the browser does not display my previous message correctly. Basically, all XML entities need to be in the form of "AMPERSAND"xxx"COLON". Replace "AMPERSAND" and "COLON" with the actual characters.
You will need to write a utility routine that converts XML entity characters such as "<", ">", etc. into the form of "<", ">" accordingly. Be sure NOT to encode your "<br/>" string. Hope that helps.
You need to use the escape attribute of the outputText:

<ice:outputText value="blah" escape="false"... />
1.7.0-DR2 appears to work correctly, but not 1.7.0-DR3. Somehow the problem gets reintroduced again.
Don't know if this has been fixed in the past, but I see this very same problem on the latest 1.7.0-DR3a.
 
Profile for thienp -> Messages posted by thienp [17] Go to Page: 1, 2 Next 
Go to:   
Powered by JForum 2.1.7ice © JForum Team