The Stimulsoft Angular viewer runs as a front-end component that talks to a Java backend (a Java SE servlet) through a request URL.

Place the Angular viewer component.
<stimulsoft-viewer-angular
  [requestUrl]="'http://localhost:8080/viewer/angular_viewer?a={action}'"
  [properties]="{ reportName: 'Dashboards.mrt' }">
</stimulsoft-viewer-angular>
Handle requests in the Java servlet.
public class StiAngularViewerActionServlet extends HttpServlet implements StiAngularViewerHandler {
    protected void processing(HttpServletRequest request, HttpServletResponse response) {
        StiWebViewerActionServletHelper.processing(
            new StiHttpServletRequest(request, this), new StiHttpServletResponse(response));
    }
    public StiWebViewerOptions getOptions(StiHttpServletRequest req, StiHttpServletResponse res) {
        return new StiWebViewerOptions();
    }
}

How it works. The Angular front end renders in the browser and calls the a Java SE servlet backend for data and actions, splitting UI from server logic.