I am trying to evaluate if it is possible to add Progressive Web App support to a JavaServerFaces web application. Our JSF app is has grown over the years and a possible future requirement might be to make parts of the application available for offline use. Besides the other nice features offered by PWA functionality (notifications, full screen web app, add to homescreen, etc), we would be primarily interested in the offline capabilities that PWA in conjunction with a service worker and caching seems to offer.
Our clients have to work in areas where sometimes there is no internet connection available. In such a situation, they should ideally be able to have access the app, authenticate themselves and navigate to the part of the app they need to use on-sight. In this part of the app they would manipulate or create new datasets. If I am informed correctly, one can - in theory - use the PWA service worker to cache data and even to store newly created or updated data for a later synchronisation with the server. Is this the case?
While the idea of PWA support seems nice, I have serious doubts that it is possible to implement especially the offline mode capabilities in a JSF application, since all the application logic is basically on the server side and the client does not make direct API calls to GET/POST/PUT/etc (and hence cache and synchronize) the data.
My research so far has produced nothing substantial (JSF & PWA) which is the reason why I am posting this question. It would be great if someone could point me into the right direction or give me an answer if JSF apps can make use of the PWA technologies, especially the offline/caching/synchronisation functionality.
Thank you.