A component web platform is a way to implement Web-based (HTTP) applications similar to those with a thick client, where the user works with GUI controls that fire as a result of events. Here, views (web pages) are the central part of the application.
The action-based web platform places emphasis on the nature of the HTTP request-response protocol, where the requests are the actions that need to be performed (in the general case: display URI maps for operation, request / body map parameters for operation arguments). Here, representations are just a way of displaying the results of operations / actions.
Both models have pros and cons. The first one seems simpler (especially if you have a Swing background), but in the long run for HTTP programming there is a problem with the return HTTP request. The latter is more natural for HTTP and allows you to write more testable code (controllers).
ps Java web applications have moved from MVC to component-based frameworks, or rather, first were Struts and others, and then JSF. In the .NET world, ASP.NET first appeared, followed by ASP.NET MVC.
source share