We have many siloed legacy multipage applications. For example, a personal information collection application may contain four or five HTML4 form based applications. The backend is based on Spring MVC and there is no javascript on the front. For example, a user may enter the name information on one screen and click next into their education background, etc. Each HTML page will contain a HTML form and data is posted back to the server on the next button.
Ultimately the portal is a collection of these siloed applications. Also, there maybe be only a few Spring based webapps that house multiple of these types of applications. For example, you may have a personal information set of Spring controllers in a Java package and html content in portal-web-app and then the help and feedback application is in the portal-web-app, etc.
I was looking to redesign using angularjs, reactjs, vuejs, or just jquery for front-end but don't see where it might aid in an application that supports multiple page apps or an application that still may require Spring MVC to render some of the content on the server side.
Why use a JavaScript framework? I mainly to want do more work on the client side. I see issues with using AngularJS because it seems that I would have to convert the entire portal site to use AngularJS and use one index.html with all of the app under that index.html. I was thinking about splitting each 4-5 page part of the app to use angularjs and then the index.html would only contain views for that 4-5 page part of the app. I see an issue where I would have to stream angular.js for each "sub" app. I guess this is OK if angularjs is cached. But there is also the issue where the 4-5 page part of the app would have to move to a separate java web application.
We could use just jQuery and connect to Spring MVC based REST services and receive the benefit of Ajax based application. This approach also allows us to support multi-page applications where some of the HTML content may be completely rendered by Spring MVC. There is more flexibility with this approach but jQuery seems too lightweight. For example, it seems easier and less buggy to build up a single view in AngularJS than with jQuery. It would be nice if I could get the directives from AngularJS without the requirement of having to build a Single Page app.