Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 1.7
-
Component/s: Framework
-
Labels:None
-
Environment:ICEfaces asynchronous applications w/ Tomcat 6 w/ optional NIO configured (or JBoss 4.2.2 with optional NIO configured).
-
Workaround Exists:Yes
-
Workaround Description:Do not configure NIO for Tomcat / JBoss 4.2.2, use ICEfaces AHS config. instead or plain old blocking IO.
Description
When testing auctionMonitor on Tomcat6.o NIO or JBoss4.2 NIO following fails:
1) 3 FF2 windows- clocks stop ticking
2) Opera 2 tabs + 1 IE window same problem
SEVERE: Failed to notify listener: com.icesoft.faces.context.View$3@13c296b
java.lang.NullPointerException
at org.apache.catalina.connector.CometEventImpl.getHttpServletResponse(C
ometEventImpl.java:112)
at com.icesoft.faces.webapp.http.servlet.TomcatPushServlet$EventResponde
r.run(TomcatPushServlet.java:295)
at com.icesoft.faces.webapp.http.core.ViewQueue.put(ViewQueue.java:17)
at com.icesoft.faces.context.View$3.run(View.java:76)
at com.icesoft.faces.context.View.broadcastTo(View.java:195)
at com.icesoft.faces.context.View.put(View.java:170)
at com.icesoft.faces.webapp.http.core.ReceivePing.service(ReceivePing.ja
NOTE: 3+ IE7 windows running auctionMonitor work fine.
Also when the JBoss4.2 server is first started Following message is seen in the logs:
2008-06-03 11:03:47,553 ERROR [org.jboss.deployment.scanner.URLDeploymentScanner] Incomplete Deployment listing:
--- Packages waiting for a deployer ---
org.jboss.deployment.DeploymentInfo@2a24ff8e { url=file:/C:/MyDownloads/JBoss/jboss-4.2.2.GA-NIO/server/default/deploy/WEB-INF/web.xml }
deployer: null
status: null
state: INIT_WAITING_DEPLOYER
watch: file:/C:/MyDownloads/JBoss/jboss-4.2.2.GA-NIO/server/default/deploy/WEB-INF/web.xml
altDD: null
lastDeployed: 1212512627522
lastModified: 1212512627522
mbeans:
This could have something to do with the changes that were made in the web.xml file for the work around being used for Jboss server as mentioned in the configuration notes:
" Note: There is a known issue with JBoss 4.2 whereby the default JBoss ReplyHeaderFilter will fail with this configuration. A work-around is to disable the ReplyHeaderFilter via the following configuration change in the ../server/default/deploy/jboss-web.deployer/conf/web.xml file:"
1) 3 FF2 windows- clocks stop ticking
2) Opera 2 tabs + 1 IE window same problem
SEVERE: Failed to notify listener: com.icesoft.faces.context.View$3@13c296b
java.lang.NullPointerException
at org.apache.catalina.connector.CometEventImpl.getHttpServletResponse(C
ometEventImpl.java:112)
at com.icesoft.faces.webapp.http.servlet.TomcatPushServlet$EventResponde
r.run(TomcatPushServlet.java:295)
at com.icesoft.faces.webapp.http.core.ViewQueue.put(ViewQueue.java:17)
at com.icesoft.faces.context.View$3.run(View.java:76)
at com.icesoft.faces.context.View.broadcastTo(View.java:195)
at com.icesoft.faces.context.View.put(View.java:170)
at com.icesoft.faces.webapp.http.core.ReceivePing.service(ReceivePing.ja
NOTE: 3+ IE7 windows running auctionMonitor work fine.
Also when the JBoss4.2 server is first started Following message is seen in the logs:
2008-06-03 11:03:47,553 ERROR [org.jboss.deployment.scanner.URLDeploymentScanner] Incomplete Deployment listing:
--- Packages waiting for a deployer ---
org.jboss.deployment.DeploymentInfo@2a24ff8e { url=file:/C:/MyDownloads/JBoss/jboss-4.2.2.GA-NIO/server/default/deploy/WEB-INF/web.xml }
deployer: null
status: null
state: INIT_WAITING_DEPLOYER
watch: file:/C:/MyDownloads/JBoss/jboss-4.2.2.GA-NIO/server/default/deploy/WEB-INF/web.xml
altDD: null
lastDeployed: 1212512627522
lastModified: 1212512627522
mbeans:
This could have something to do with the changes that were made in the web.xml file for the work around being used for Jboss server as mentioned in the configuration notes:
" Note: There is a known issue with JBoss 4.2 whereby the default JBoss ReplyHeaderFilter will fail with this configuration. A work-around is to disable the ReplyHeaderFilter via the following configuration change in the ../server/default/deploy/jboss-web.deployer/conf/web.xml file:"
Activity
Mandeep Hayher
created issue -
Ken Fyten
made changes -
Field | Original Value | New Value |
---|---|---|
Component/s | Framework [ 10013 ] | |
Fix Version/s | 1.7.1 [ 10122 ] | |
Assignee Priority | P1 | |
Affects Version/s | 1.7.1 [ 10122 ] | |
Affects Version/s | 1.7 [ 10080 ] | |
Assignee | Jack Van Ooststroom [ jack.van.ooststroom ] |
Ken Fyten
made changes -
Environment | FF2 & Opera9.21 | ICEfaces asynchronous applications w/ Tomcat 6 w/ optional NIO configured (or JBoss 4.2.2 with optional NIO configured). |
Fix Version/s | 1.7.2 [ 10130 ] | |
Fix Version/s | 1.7.1 [ 10122 ] | |
Affects | [Compatibility/Configuration] | |
Affects Version/s | 1.7 [ 10080 ] | |
Affects Version/s | 1.7.1 [ 10122 ] | |
Security | Private [ 10001 ] |
Ken Fyten
made changes -
Workaround Description | Do not configure NIO for Tomcat / JBoss 4.2.2, use ICEfaces AHS config. instead or plain old blocking IO. | |
Workaround Exists | [Yes] |
Jack Van Ooststroom
made changes -
Assignee Priority | P1 | P3 |
Jack Van Ooststroom
made changes -
Fix Version/s | 1.8DR#2 [ 10142 ] | |
Fix Version/s | 1.7.2 [ 10130 ] |
Ken Fyten
made changes -
Assignee | Jack Van Ooststroom [ jack.van.ooststroom ] | Deryk Sinotte [ deryk.sinotte ] |
Ken Fyten
made changes -
Fix Version/s | 1.8DR#3 [ 10143 ] | |
Fix Version/s | 1.8DR#2 [ 10142 ] |
Ken Fyten
made changes -
Assignee Priority | P3 |
Ken Fyten
made changes -
Salesforce Case | [] | |
Assignee Priority | P1 | |
Assignee | Deryk Sinotte [ deryk.sinotte ] | Mandeep Hayher [ mandeep.hayher ] |
Ken Fyten
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Affects | [Compatibility/Configuration] | |
Assignee Priority | P1 | |
Resolution | Fixed [ 1 ] | |
Assignee | Mandeep Hayher [ mandeep.hayher ] |
Ken Fyten
made changes -
Fix Version/s | 1.8 [ 10161 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
SEVERE: Failed to notify listener: com.icesoft.faces.context.View$3@13c296b
java.lang.NullPointerException
at org.apache.catalina.connector.CometEventImpl.getHttpServletResponse(CometEventImpl.java:112)
at com.icesoft.faces.webapp.http.servlet.TomcatPushServlet$EventResponder.run(TomcatPushServlet.java:295)
at com.icesoft.faces.webapp.http.core.ViewQueue.put(ViewQueue.java:17)
at com.icesoft.faces.context.View$3.run(View.java:76)
at com.icesoft.faces.context.View.broadcastTo(View.java:195)
at com.icesoft.faces.context.View.put(View.java:170)
...
This exception is thrown because the TomcatPushServlet is invoking the getHttpServletResponse() method on an instance of the CometEvent that has been "recycled" by Tomcat 6, even though the TomcatPushServlet has not send back a response.
What I discovered so far by adding logging to Tomcat 6' source and rebuilding it:
At this point I don't know if this is a bug in the TomcatPushServlet or in Tomcat 6 itself. We should be able to read the incoming data without any consequences, which we do on each incoming Request. Strangely enough this (the NPE) doesn't always seem to happen, only sporadically.