There are many different technologies available to write your application user interface. In the Java world there is AWT, JFC Swing, SWT Eclipse, Flex, JSP, JSF, Struts, GWT (Google AJAX), Spring, Wicket and many more. In the Microsoft camp there are various versions of .NET and commercial GUI toolkits.
JReport provides 3 methods to embed JReport services into your applications.
1. The lowest level is simply a URL. Almost every service such as running a report in various formats, scheduling a report, creating a new ad hoc report and viewing the results from running reports are all available to any technology that can make a URL request. This includes all technologies listed above so even if your application is entirely written in C# or C++ and uses 100% Microsoft APIs, you can still use JReport Server for reporting since all that takes is a URL.
2. The second method is more flexible and again can be called from any application that can make a HTTP request. This method is calling a predefined JReport JSP page such as http://localhost:8888/jinfonet/runReport.jsp with parameters and other information pointing to the catalog and template. This provides more flexibility since the developer can customize the JSP pages that are called and fully integrate the user’s experience with the application whether or not the application itself uses JSPs.
3. The third method is the most powerful of all, directly calling the JReport Server API to run, schedule, and view reports. The only requirement is that the application must be able to directly call Java methods provided by JReport Sever. Other than .NET applications, most other technologies allow the developer to call Java APIs directly. This provides the most flexibility and capabilities to fully integrate JReport into your Java based applications. You can also call Java APIs through third party software offering a bridge between Java and .NET using JReport.
In summary, even though JReport Sever provides the default user interface the user sees as JSPs, JReport provides the capability for the developer to integrate JReport into any user environment.
Senior Product Manager