[MGNLUI-5257] Provide push support in Admincentral Created: 12/Feb/18  Updated: 03/May/21  Resolved: 11/Jul/19

Status: Closed
Project: Magnolia UI
Component/s: None
Affects Version/s: None
Fix Version/s: 6.2

Type: New Feature Priority: Neutral
Reporter: Aleksandr Pchelintcev Assignee: Aleksandr Pchelintcev
Resolution: Fixed Votes: 0
Labels: atmosphere, long-polling, push, vaadin
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Cloners
is cloned by MGNLUI-5221 Enable vaadin server push for refresh... Closed
Relates
relates to MGNLUI-3288 UI requires PUSH Closed
relates to MGNLUI-5278 Replace usages of polling with UI#pus... Open
dependency
is depended upon by PAGES-310 Refresh status column indicators in t... Closed
relation
is related to MGNLDAM-794 Incorrect status icons after moving f... Closed
Template:
Acceptance criteria:
Empty
Release notes required:
Yes
Date of First Response:
Epic Link: UI framework: basic features
Sprint: UI Framework 1

 Description   

Since years we have the opportunity to provide server-side push functionality in Admincentral. Maybe now is the time?

Long-polling solution does not require any major changes and can be enabled almost right away.

 

In order to provide long polling, we need to do the following:

  • add the dependency to the vaadin-push artefacts 
  • enable push in AdmincentralUI class (annotations are needed)
  • make sure that filter chain does not bork the communication (gzip filter might need adjustment and by-pass push requests)


 Comments   
Comment by Mikaël Geljić [ 24/Jul/19 ]

for release notes:

Critical: update your web.xml, it must declare async support on Magnolia's main filter

<filter>
  <display-name>Magnolia global filters</display-name>
  <filter-name>magnoliaFilterChain</filter-name>
  <filter-class>info.magnolia.cms.filters.MgnlMainFilter</filter-class>
  <async-supported>true</async-supported>
</filter>

Also, Magnolia does not support Push over WebSockets, please also add these new context parameters:

<!--  the following two parameters prevent atmosphere framework from attempting to install -->
<!--  JSR-356 (not needed and causes issues with our servlet setup-->
<context-param>
  <param-name>org.atmosphere.cpr.AtmosphereConfig.getInitParameter</param-name>
  <param-value>true</param-value>
</context-param>
<context-param>
  <param-name>org.atmosphere.websocket.suppressJSR356</param-name>
  <param-value>true</param-value>
</context-param>
Generated at Mon Feb 12 09:24:44 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.