WebSocket (Atmosphere) with Per Request problems (Hibernate and Shiro) - Vaadin -
the framework vaadin in version 7 uses atmosphere enable both push logic, , apparently "all over" communications in system when available, i.e. on ordinarly requests browser.
this when atmosphere doesn't use websockets (e.g. when jetty not configured websocket support), , therefore must rely on long polling or similar http "fake" push methods seems long servlet call.
however, when actual websocket used, both shiro , hibernate complains loudly.
the problem servlet filters doesn't "kick in" websockets. hibernate creates per-request connections spring's opensessioninviewfilter, acts transaction boundaries committing/closing on exit. shiro creates websubject objects extension of abstractshirofilter - sticks servletrequest , servletresponse objects subject - , clears "threadcontext" (which threadlocal) upon exit.
does have ideas here? hoping atmosphere have similar "try-finally"-like "filterchain.continue" logic, 1 recreate entry/exit logic described above. however, i've seen far, atmosphere doesn't have kind of filtering available.
i love hear suggestions.
maybe can try replace servlet api filters atmosfere's interceptors? suppose can useful in case.
Comments
Post a Comment