On 30/05/17 16:12, Bhuvan Gupta wrote: > I have added some observation for the issue and observation 5 is interesting > Basically it shows that web.xml filter are registered before WsFilter can > register, which creates a problem > > Please clarify: > > https://stackoverflow.com/questions/44216801/tomcat-using-servlet-and-websocket-jsr356-in-same-web-app
Again: You just need to configure Tomcat's WebSocket filter in your web.xml before the GuiceFilter. Like the GuiceFilter, it needs to be mapped to "/*". It also needs to be configured to handle DispatcherType.REQUEST and DispatcherType.FORWARD. Mark > > On Tue, May 30, 2017 at 12:15 PM, Mark Thomas <ma...@apache.org> wrote: > >> This time to the list... >> >> On 29/05/17 16:49, Bhuvan Gupta wrote: >>> Mark, >>> >>>>> Explicitly declare Tomcat's WebSocket filter and ensure it is the first >>> filter in the processing chain. >>> Can you please give a sample , how to create such filter. >>> >>> I looked into the documentation , but cant find it >> >> You don't need to create a filter. You just need to configure Tomcat's >> WebSocket filter in your web.xml before the GuiceFilter. Like the >> GuiceFilter, it needs to be mapped to "/*". It also needs to be >> configured to handle DispatcherType.REQUEST and DispatcherType.FORWARD >> >> Mark >> >> >>> >>> On Sun, May 28, 2017 at 3:44 PM, Mark Thomas <ma...@apache.org> wrote: >>> >>>> On 28 May 2017 10:09:03 BST, Bhuvan Gupta <bhuva...@gmail.com> wrote: >>>>> Hello, >>>>> >>>>> >>>>> >>>>> I create a sample webapp using servlets and http, which work fine and >>>>> the >>>>> web.xml looks like >>>>> >>>>> <filter> >>>>> <filter-name>guiceFilter</filter-name> >>>>> <filter-class>com.google.inject.servlet.GuiceFilter</ >>>> filter-class></filter> >>>>> <filter-mapping> >>>>> <filter-name>guiceFilter</filter-name> >>>>> <url-pattern>/*</url-pattern></filter-mapping> >>>>> >>>>> Now i want to add few @ServerEndPoint class to use websocket. So i >>>>> added a >>>>> class and added @ServerEndpoint(value = "/websocket/chat) on that >>>>> class. >>>>> >>>>> Now i expected that when i use websocket client and use >>>>> ws://localhost:8080/app/websocket/chatto connect it should work but it >>>>> does >>>>> not as i already have a /* filter which redirect request to >>>>> guiceFilter. >>>>> >>>>> *If i comment the filter it works fine.* >>>>> ------------------------------ >>>>> >>>>> *Question:* >>>>> >>>>> How can i tell tomcat to first consider serverEndPoint url for routing >>>>> the >>>>> request before matching the filter url patterns ? >>>> >>>> Explicitly declare Tomcat's WebSocket filter and ensure it is the first >>>> filter in the processing chain. >>>> >>>> Mark >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >>>> For additional commands, e-mail: users-h...@tomcat.apache.org >>>> >>>> >>> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >> For additional commands, e-mail: users-h...@tomcat.apache.org >> >> > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org