Bug 1001854
Summary: | RichFaces Push fails with CNFE for org.apache.coyote.http11.upgrade.UpgradeInbound | ||
---|---|---|---|
Product: | [JBoss] JBoss Enterprise Application Platform 6 | Reporter: | Brian Leathem <bleathem> |
Component: | Apache Server (httpd) and Connectors | Assignee: | Jean-frederic Clere <jclere> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Jan Stefl <jstefl> |
Severity: | unspecified | Docs Contact: | Russell Dickenson <rdickens> |
Priority: | unspecified | ||
Version: | 6.1.1 | CC: | rmaucher |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2014-08-20 08:13:46 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Brian Leathem
2013-08-28 01:37:41 UTC
It seems you are trying to use the Tomcat7 websocket with JBossWeb that can't work. I think you need to use the AtmosphereLegacyServlet Brian Leathem <bleathem> made a comment on jira RF-13154 We are currently using AtmosphereServlet: https://github.com/richfaces4/core/blob/master/impl/src/main/java/org/richfaces/webapp/PushServlet.java#L39 Here's the announcement for AtmosphereLegacyServlet: http://atmosphere-framework.2306103.n4.nabble.com/Vote-1-1-Dropping-Tomcat6-Tomcat7-JBossWeb-native-support-by-default-td4654815.html {quote} I'm ready to drop native support for Tomcat 6/7 and JBoss Web. The changes would be simple. An application that wants to be deployed in Tomcat6/Tomcat7/JBossX will need to use the AtmosphereLegacyServlet where normal web app would just use the AtmosphereServlet like before? That would remove, by default, all the atmosphere-compat-XXX jar file. {quote} I'll try switching to the AtmosphereLegacyServlet and see if that resolves the problem. Brian Leathem <bleathem> made a comment on jira RF-13154 Hmm, aside from that mailing list announcement, I cannot find any other mention of the AtmosphereLegacyServlet. ---- Looking more closely at what is triggering the Tomcat7 websocket from Atmosphere, I can see that tomcat checks for the presence of a tomcat7 class here: https://github.com/Atmosphere/atmosphere/blob/atmosphere-1.0.x/modules/cpr/src/main/java/org/atmosphere/cpr/DefaultAsyncSupportResolver.java#L182 https://github.com/Atmosphere/atmosphere/blob/atmosphere-1.0.x/modules/cpr/src/main/java/org/atmosphere/cpr/DefaultAsyncSupportResolver.java#L92 And this class is included in JBoss Web 7.2.2.Final: http://anonsvn.jboss.org/repos/jbossweb/tags/JBOSSWEB_7_2_2_FINAL/src/main/java/org/apache/catalina/websocket/WebSocketServlet.java [~jfclere] Is there a reason the Tomcat7 websocket class is included in JBossWeb 7.2.2.Final? Not only does it's presence break Richfaces push, but it's going to break push for *any* JBoss EAP application that uses the Atmosphere library. We added the websocket support in jbossweb-7.2.2. It is based on the Tomcat7 websocket. Brian Leathem <bleathem> made a comment on jira RF-13154 I'm confused: {quote} It seems you are trying to use the Tomcat7 websocket with JBossWeb that can't work. {quote} + {quote} We added the websocket support in jbossweb-7.2.2. It is based on the Tomcat7 websocket. {quote} So are we supposed to use tomcat7 websockets in jbossweb-7.2.2 or not? --- Jean-frederic Clere: How do you propose we resolve this issue? Is there anything that can be done in jbossweb to not break RichFaces and Atmosphere applications in this micro release of JBoss EAP? "it is based on" doesn't mean it is the tomcat7 websocket Our way to call upgrade is different. Using "org.apache.coyote.http11.upgrade.UpgradeInbound" as the test there should work better: https://github.com/Atmosphere/atmosphere/blob/atmosphere-1.0.x/modules/cpr/src/main/java/org/atmosphere/cpr/DefaultAsyncSupportResolver.java#L92 It's not using the Tomcat 7 websocket anyway, it does its own upgrade. Brian Leathem <bleathem> made a comment on jira RF-13154 I filed an issue with the Atmosphere project: https://github.com/Atmosphere/atmosphere/issues/1262 Brian Leathem <bleathem> made a comment on jira RF-13154 I tried the proposed fix and can confirm it resolves the problem with jbossweb 7.2.2.Final. I issued a pull request against the atmosphere project containing this fix: https://github.com/Atmosphere/atmosphere/pull/1263 Hopefully we can get a release of Atmosphere in a timely manner (ie. next week) otherwise we'll have to fork the project and have our own release in place before the WFK 2.4 and EAP 6.1.1 release go GA. Brian Leathem <bleathem> made a comment on jira RF-13154 The pull request was merged. I spoke with [~jfarcand] on IRC and he has agreed to do a 1.0.17 release of atmosphere this week that incorporates this patch. [~ppitonak] would you please run the RichFaces Push tests against a build of RichFaces from the release/4.3.4 branch to make sure Atmosphere 1.0.17-SNAPSHOT does not introduce any regressions? Pavol Pitonak <ppitonak> made a comment on jira RF-13154 Atmosphere 1.0.17-SNAPSHOT seems to work fine. Brian Leathem <bleathem> made a comment on jira RF-13154 Resolution of this issue (and the subsequent release of RichFaces 4.3.4) is waiting on the 1.0.17 release of Atmosphere. Brian Leathem <bleathem> made a comment on jira RF-13154 I upgraded atmosphere to 1.0.17 Pavol Pitonak <ppitonak> made a comment on jira RF-13154 I built branch release/4.3.4 locally and push seems to work on EAP 6.1.1. Jeanfrancois Arcand <jfarcand> made a comment on jira RF-13154 Just as FYI, Atmosphere is using an old version of JBossWeb, but it is just to build against it. Atmosphere do support JBossWeb with WebSocket, as described here: {noformat} https://github.com/Atmosphere/atmosphere/wiki/Installing-JBoss-WebSocket-Support {noformat} Thsi works fine with 7.2.x Brian Leathem <bleathem> made a comment on jira RF-13154 Thanks [~jfarcand], I added your comment to RF-13190. And thanks again for getting the updated Atmosphere release out. I'll be sure to give you props in the RichFaces release announcement ;) With regard on previous discussion I am closing this BZ. |