abegelid's picture
From abegelid rss RSS  subscribe Subscribe

Jasper Soft%20 Ap Is 

 

 
 
Tags:  enterprise  20 
Views:  263
Published:  November 23, 2011
 
0
download

Share plick with friends Share
save to favorite
Report Abuse Report Abuse
 
Related Plicks
Rup Enterprise Architecture Discipline

Rup Enterprise Architecture Discipline

From: antmod
Views: 169 Comments: 0
Rup Enterprise Architecture Discipline
 
Rup Enterprise Administrative Discipline

Rup Enterprise Administrative Discipline

From: akabac7
Views: 254 Comments: 0
Rup Enterprise Administrative Discipline
 
HTML5

HTML5

From: bbbaker
Views: 299 Comments: 0

 
Steven De Vjver   Grails In The Enterprise

Steven De Vjver Grails In The Enterprise

From: ecchang8
Views: 210 Comments: 0
Steven De Vjver Grails In The Enterprise
 
Enterprise Encryption and Key Management Strategy

Enterprise Encryption and Key Management Strategy

From: anon-603242
Views: 94 Comments: 0
"Understand the importance of a long term enterprise encryption and key management strategy over the short term fix of an ad hoc encryption to address any data security concerns.
This is a video adaptation from the whitepape (more)

 
See all 
 
More from this user
teste

teste

From: abegelid
Views: 563
Comments: 0

Senior helpers in home elder care of spokane, washington, helps seniors avoid being swindled

Senior helpers in home elder care of spokane, washington, helps seniors avoid being swindled

From: abegelid
Views: 462
Comments: 0

progressive mreport-04/07

progressive mreport-04/07

From: abegelid
Views: 580
Comments: 0

June, 2007: Working in Iraq

June, 2007: Working in Iraq

From: abegelid
Views: 231
Comments: 0

Dali

Dali

From: abegelid
Views: 2271
Comments: 0

Datawise services

Datawise services

From: abegelid
Views: 364
Comments: 0

See all 
 
 
 URL:          AddThis Social Bookmark Button
Embed Thin Player: (fits in most blogs)
Embed Full Player :
 
 

Name

Email (will NOT be shown to other users)

 

 
 
Comments: (watch)
 
 
Notes:
 
Slide 1: Jaspersoft APIs Integrating BI with your Application Open Source and Professional Editions Jaspersoft Headquarters: 539 Bryant Street, Suite 100 San Francisco, CA 94107, USA phone: +1 888.399.2199 or +1 415.348.2380 Email: sales@jaspersoft.com Jaspersoft Europe, Middle-East, Africa: Unit 1A, Bay 1, Digital Depot Roe Lane, The Digital Hub Dublin 8, Republic of Ireland Phone: +353 1 443 4700 Email: sales-emea@jaspersoft.com
Slide 2: Jaspersoft APIs – Integrating BI with your Application Table of Contents INTRODUCTION .......................................................................................................... 3 BUILT BY DEVELOPERS FOR DEVELOPERS .................................................................... 3 JASPERREPORTS ......................................................................................................... 4 API SUMMARY ..................................................................................................................... 4 JASPERSERVER APIS .................................................................................................... 5 EMBED REMOTE REPORT MANAGEMENT: WEB SERVICES API....................................................... 6 Reference Implementations 7 API Summary 9 THE COMPLETE API: JAVA .................................................................................................... 10 Reference Implementations 11 API Summary 12 CUSTOM AD HOC LAUNCHER ................................................................................................ 13 Proof of Concept 13 API Summary 14 HTTP API FOR THE AD HOC EDITOR ...................................................................................... 15 Reference Implementation 15 API Summary 15 HTTP INTERFACE................................................................................................................ 17 Link to Content 17 View Resources in the JasperServer Repository 17 Execute JasperReports ReportUnits 18 Execute JasperAnalysis OLAP Views 19 Initiate the JasperServer Professional Ad Hoc Editor 19 ABOUT SECURITY ................................................................................................................ 20 JASPERSOFT API BENEFITS ........................................................................................ 21 © 2009 Jaspersoft Page 2
Slide 3: Jaspersoft APIs – Integrating BI with your Application Introduction Almost every commercially viable business application offers built-in reporting or analytics. Too often, however, the business intelligence (BI) features included with these applications fail to meet customer expectations. At the same time, product managers and developers become increasingly frustrated with home-grown and legacy systems that are far too expensive to develop, manage, and maintain. JasperSoft solves these problems, so that reporting and analytics can truly enhance the quality and value of all applications through seamless integration. JasperSoft meets a broad range of reporting and BI requirements. In combination with our flexible licensing options, our application programming interfaces (APIs) differentiate JasperSoft as the most powerful, flexible, and cost-effective reporting and BI solution for providers of corporate, open source, and commercial software applications. This white paper introduces JasperSoft's APIs to product managers and development managers. For an introduction to our licensing options, please visit http://www.jaspersoft.com/pr_overview.html. Built by Developers for Developers JasperSoft often describes its software as being “built by developers, for developers.” Our namesake product, JasperReports, is not even an end-user application, but an open source reporting library that developers from all over the world have embedded in countless open source, commercial, and IT applications. When we designed JasperServer, our JasperReports-based reporting and BI server for end-users, we stayed committed to the principles that made JasperReports so successful: applications should be built on reusable APIs that are easy to access, implement, and customize. As a result, we designed our APIs first, and then built JasperServer on top of them. You can work confidently with the JasperSoft APIs, because our own applications are genuine reference implementations. The JasperSoft APIs are essential to the success of our business. We hope that this white paper will inspire you to think about how you, too, can use the JasperSoft APIs to: © 2009 Jaspersoft Page 3
Slide 4: Jaspersoft APIs – Integrating BI with your Application Embed world-class reporting and analytics in your applications Customize and extend JasperServer’s presentation logic to meet your customers’ needs, without affecting source code or compromising forward compatibility Integrate JasperServer with other business applications and processes Allow third party web sites, portals, blogs, etc., to embed your dashboards, reports, and analyses JasperReports As mentioned above, JasperSoft is named after JasperReports, the world's most widely used open source reporting library. Developers can add the JasperReports library (a JAR file) to an application's Java CLASSPATH. At this point, JasperReports is "embedded" in the application, as if the reporting component were written by the host application's development team. Developers can then create, display, and export reports using the published JasperReports APIs. API Summary API Target users Host application technologies Purpose API documentation JasperReports Java developers Java servlet (for web applications) Java standalone (for desktop applications) Java command line (useful for testing) Generate reports for screen and print Download and unzip the latest jasperreports-x.x.xproject.zip file. API documentation is available under \jasperreports-x.x.x\dist\javadoc. © 2009 Jaspersoft Page 4
Slide 5: Jaspersoft APIs – Integrating BI with your Application JasperServer APIs JasperServer1 is a comprehensive reporting and BI server. Its architecture includes a database repository for securing reports, analysis views, and associated resources; web user interfaces for doing things like ad hoc report design and repository management; pluggable back-end implementation engines to perform specific jobs, such as generating reports and authenticating users; and APIs that are used by business applications to access the underlying BI engines. Figure 1: All JasperServer functionality is exposed through APIs. Notice in Figure 1 that there are two categories for the front-end presentation layer: “JasperSoft,” represented here by JasperServer, and "More applications." What this means is that you can use the exact same APIs that JasperSoft uses to develop your own applications. 1 Note: JasperReports is embedded in JasperServer. JasperServer calls JasperReports APIs to generate, display, and export reports. © 2009 Jaspersoft Page 5
Slide 6: Jaspersoft APIs – Integrating BI with your Application Embed Remote Report Management: Web Services API JasperServer’s managed reporting functions are exposed through web services APIs. Use the web services APIs when: Your business application is written in C/C++, C#, PHP, Perl, Python, Ruby on Rails, or any language other than Java (thus requiring a common communication protocol between your application and JasperServer). or Your business application runs remotely, even if it is written in Java (on a different computer or network than the JasperServer, thus requiring http to communicate between the two systems). Using JasperSoft's web services APIs, you can seamlessly integrate the following JasperSoft-enabled functionality into your own applications: Report execution and repository management: runReport Executes a report on the server, and returns the report’s results in the specified format. The client application is responsible for prompting users for values to pass to any input controls defined in the report. Adds new resources to the repository or modifies existing ones. Obtains information about a resource. In the case of file resources, such as images, fonts, JRXML files, and JAR files, the resource file is attached to the response message. Retrieve a list of resources in a specified folder or report unit. Deletes resources from the JasperServer repository. put get list delete © 2009 Jaspersoft Page 6
Slide 7: Jaspersoft APIs – Integrating BI with your Application Report scheduling: deleteJob deleteJobs getJob scheduleJob Delete a single report job specified by its ID. Delete multiple report jobs specified by their IDs. Returns the full job details of a report job whose ID is sent as a parameter. Schedules a new job. The job details must be sent as parameters; the operation returns the saved job details as its result. Updates an existing job. The full job details (as retrieved using “getJob”) must be sent as a parameter; the operation returns the updated job details as saved by the JasperServer scheduling service. Returns the list of all accessible report jobs Returns the list of all accessible report jobs for a specific report (whose URL is sent as a parameter) updateJob getAllJobs getReportJobs Reference Implementations The JasperStudio / iReport plug-in interfaces with JasperServer using web services APIs. Tasks such as getting a list of resources from the repository, retrieving a JRXML file (so that it can be modified using the JasperStudio or iReport graphical report designer), and running report units are executed in JasperStudio / iReport using web services calls to a remote JasperServer. © 2009 Jaspersoft Page 7
Slide 8: Jaspersoft APIs – Integrating BI with your Application JasperStudio / iReport use Web Services APIs to interface with JasperServer Figure 2: JasperStudio and iReport interface with JasperServer using a web services plugin. You can learn more about the JasperStudio / iReport plugin by reading the JasperServer Web Services Guide. The guide is available online and is installed with JasperServer as /jasperserver/docs/JasperServer-WebServices-Guide.pdf. JasperSoft also provides Java, PHP, and C/C++ sample clients that implement the above functionality. If you use Java, PHP, or C/C++, you can use these samples as-is. For other languages, you can review these implementations as guidelines. Samples are installed in /jasperver/samples. © 2009 Jaspersoft Page 8
Slide 9: Jaspersoft APIs – Integrating BI with your Application Figure 3: Scheduling a report using a web services sample application. API Summary API Target users Host application technologies Primary Uses JasperServer web services Any developer Any application that can make a web services call Embed managed reporting in applications Embed report scheduling and distribution in applications JasperServer Web Services Guide, available with the software as /jasperserver/docs/JasperServer-WebServices-Guide.pdf. Page 9 API documentation © 2009 Jaspersoft
Slide 10: Jaspersoft APIs – Integrating BI with your Application The Complete API: Java The complete JasperServer APIs are expressed as abstract Java interfaces that are connected to concrete implementations at run time using the Spring framework. The Java APIs are appropriate when: Your application needs to closely integrate with JasperServer components (so it can access the JasperServer libraries through the local Java CLASSPATH). or You want to change or extend underlying JasperServer functionality. Using the Java APIs, you have full access to all JasperServer functionality, including: 1. Repository Service API: Store, lookup, and retrieve content using the JasperSoft repository. (Also available with web services APIs.) 2. Report Execution Engine Service API: Generate reports on-demand. (Also available with web services APIs.) 3. Custom Data Source API: Use data sources for reports that are not supplied by JasperServer. 4. Report Scheduling Service API: Execute, store, and distribute reports on a schedule. (Also available with web services APIs.) 5. Ad Hoc Service API: Create ad hoc tables, charts, and crosstabs using a web browser. (JasperServer Professional only.) 6. OLAP Service API: OLAP server and model runtime management. (JasperServer with JasperAnalysis only.) 7. User Authority Service API: User and role management. 8. Object Permission Service API: Search, retrieve, and modify repository object permissions. © 2009 Jaspersoft Page 10
Slide 11: Jaspersoft APIs – Integrating BI with your Application The Java APIs can be used to implement functionality that does not exist in JasperServer, by providing alternate implementations of the base APIs and extending the underlying Spring configurations. Reference Implementations JasperServer Open Source edition, JasperServer Professional, and Jasper4Salesforce were all built using the JasperServer Java APIs. Jasper4Salesforce is most representative of how the APIs would be implemented by most non-JasperSoft developers2. It adds high quality report management and scheduled reporting for salesforce.com, a leading Software as a Service/On Demand service. Jasper4Salesforce, for example: Adds custom objects in the JasperServer repository (customer, registration) Uses Salesforce.com for authentication Has a custom report data source leveraging Salesforce’s web services based API Partitions the repository based on user profile and customer – “multitenancy” Figure 4: Scheduling a report in JasperServer Professional. Figure 5: Scheduling a report in Jasper4Salesforce. 2 Theoretically, you could build your own stand-alone BI server with the JasperServer Java APIs. It is unlikely that this would be worth your while, however, as JasperServer is easily configurable and customizable. For more information, read HTTP API for the Ad Hoc Editor on page 11 and HTTP Interface on page 13. Also download the Customizing and Rebranding the JasperSoft User Interface white paper, available for download at http://www.jaspersoft.com/re_overview.html. © 2009 Jaspersoft Page 11
Slide 12: Jaspersoft APIs – Integrating BI with your Application API Summary API Target users Host application technologies Purpose JasperServer Java APIs Java developers Java servlet (for web applications) Java standalone (for desktop applications) Java command line Embed managed reporting in applications Embed report scheduling and distribution in applications Embed ad hoc reporting in applications Embed OLAP / analytics to applications Embed JasperServer repository administrative capabilities in an application JavaDoc JasperServer Ultimate Guide3 JasperServer Professional Administration Guide API documentation 3 The JasperServer Ultimate Guide is included in JasperServer Professional annual subscription fees. Open Source users can purchase the JasperServer Ultimate Guide from http://www.jaspersoft.com/JasperShop_Documentation.html. © 2009 Jaspersoft Page 12
Slide 13: Jaspersoft APIs – Integrating BI with your Application Custom Ad Hoc Launcher The Ad Hoc Launcher API for JasperServer Professional allows you to present a custom entry point into the ad hoc editor. This is a very useful API for applications that wish to provide end-users with ad hoc reporting capabilities. Some examples of possible Ad Hoc launchers include the following: A generic SQL query builder that allows power users to choose a JDBC data source, view the tables available from it, and build a query against one or more tables. This approach is demonstrated in the sample Ad Hoc launcher called browseDB, described below. An interface for passing queries based on application-specific metadata, such as a list of predefined queries maintained in its own table. An interface for constructing queries against a custom datasource which has metadata facilities, such as Hibernate. A blank query box in which a power user manually enters query text and report field definitions. This would be analogous to creating a JasperReport by editing the JRXML. A custom Ad Hoc launcher must create an instance of the AdhocData Java class, which includes data source, query, and field information. This is passed to Ad Hoc through the servlet session. The user interface presented for building the AdhocData is completely up to you. For more information, refer to the JasperServer Ultimate Guide. Proof of Concept JasperServer includes a proof-of-concept extension to JasperServer Professional that implements the Ad Hoc Launcher API. The browseDB sample application is a stripped-down ad hoc query builder. Example 1: Snippet of the BrowseDB controller source file, showing the Ad Hoc Launcher API. ModelAndView mv = new ModelAndView(“redirect:/flow.html? _flowId=adhocFlow&adhocLauncher=true”); © 2009 Jaspersoft Page 13
Slide 14: Jaspersoft APIs – Integrating BI with your Application You can build and deploy browseDB from the source files located in the JasperServer installation directory under /samples/customAdHoc. Example 2: Running browseDB, the proof-of-concept extension for the Ad Hoc Launcher API. http://server:8080/jasperserverpro/browseDB/browseDB.html? action=pickDatasource API Summary API Target users Host application technologies Purpose API documentation Custom Ad Hoc Launcher Java developers Java servlet (for web applications) Provide a custom entry-point to the ad hoc editor JavaDoc JasperServer Ultimate Guide4 /samples/customAdHoc 4 The JasperServer Ultimate Guide is included in JasperServer Professional annual subscription fees. Open Source users can purchase the JasperServer Ultimate Guide from http://www.jaspersoft.com/JasperShop_Documentation.html. © 2009 Jaspersoft Page 14
Slide 15: Jaspersoft APIs – Integrating BI with your Application HTTP API for the Ad Hoc Editor JasperServer Professional includes an HTTP API that developers can use to modify the Ad Hoc Editor or create your own custom Ad Hoc Editor. The JasperServer Professional default Ad Hoc Editor is written in AJAX (JavaScript and XML). If you wish to create your own Ad Hoc Editor (for example, not use dragand-drop, or to create an editor in a programming language other than Java), you could re-use the JasperServer state object on the server and make use of the dynamic content that is retrieved. Reference Implementation JasperServer Professional uses the HTTP API for the Ad Hoc Editor. The following are just a few examples of XMLHttpRequests that are made when working with the JasperServer Professional Ad Hoc Editor. Example 3: Adding a column to an ad hoc report of type “crosstab.” http://server:8080/jasperserverpro/adhoc/crosstab.html? action=insertColumnGroup&f=ShipCountry&i-0 Example 4: Changing the design theme for an ad hoc report of type “chart.” http://server:8080/jasperserver-pro/adhoc/chart.html? action=setThem&t=corporate Example 5: Clicking the “Run” button in the Ad Hoc Editor for reports of any type. http://server:8080/jasperserver-pro/adhoc/table.html ?action=saveTemp API Summary API © 2009 Jaspersoft HTTP API for JasperServer Professional Ad Hoc Editor Page 15
Slide 16: Jaspersoft APIs – Integrating BI with your Application Target users Host application technologies GUI developers JasperServer Professional (to customize/redesign the JasperServer Pro UI) o XMLHTTP (AJAX/JavaScript) o Java Servlet o Spring MVC o Spring Web Flow Any other programming language (to create a new UI) Customize or redesign the user interface for the JasperServer Professional ad hoc report editor Create an ad hoc report editor in a new programming language JasperServer Ultimate Guide Purpose API documentation © 2009 Jaspersoft Page 16
Slide 17: Jaspersoft APIs – Integrating BI with your Application HTTP Interface The HTTP interface is the most commonly used API, and also the easiest to implement. However, the HTTP interface is not considered “embeddable” in the same way that the web services and Java APIs can be embedded in nonJasperSoft applications. Rather, the HTTP interface is used primarily as “short-cuts” or entry points to commonly used JasperServer features or content. For example, the SuperMart demo that ships with JasperServer Professional makes frequent use of the HTTP interface. It is this simple API that allows users to interact with the SuperMart dashboard, dynamically pass parameters from a JasperServer report to an OLAP view, display the user’s personal folder based on the login ID, and more. The HTTP interface is also useful when emailing notification that scheduled jobs have completed. As you’ll notice in the examples that follow, the major APIs are: o flow.html o olap/** o fileview/** Link to Content The HTTP Interface can be used to link to JasperReports that were previously executed, exported, and saved to the JasperServer repository as PDF, HTML, Excel, or RTF content files. Example 6: Link to a PDF file stored in the JasperServer repository. http://server:8080/jasperserver-pro/fileview/fileview/ supermart/Details/CustomerDetail.pdf View Resources in the JasperServer Repository Example 7: Display all resources saved in a user's personal folder in the JasperServer repository. http://server:8080/jasperserver-pro/flow.html?_flowId= repositoryFlow&folder=/PersonalFolders/demo © 2009 Jaspersoft Page 17
Slide 18: Jaspersoft APIs – Integrating BI with your Application Example 8: Display all resources of type "OLAP view" saved in all folders in the JasperServer repository. http://server:8080/jasperserver-pro/flow.html?_flowId= olapViewListFlow Execute JasperReports ReportUnits Execute and export JasperReports using the JasperServer web application. Example 9: Execute a JasperReports report without any parameters. http://server:8080/jasperserver-pro/flow.html?_flowId= viewReportFlow&reportUnit=/supermart/Details/CustomerD ashboard Example 10: Execute the same report, but pass "4012" as an input control parameter and export to PDF instead of HTML. http://server:8080/jasperserver-pro/flow.html?_flowId= viewReportFlow&reportUnit=/supermart/Details/CustomerD ashboard&customerID=4012&output=pdf © 2009 Jaspersoft Page 18
Slide 19: Jaspersoft APIs – Integrating BI with your Application Execute JasperAnalysis OLAP Views Open, export, and save JasperAnalysis OLAP views using the JasperServer web application. Example 11: Open an OLAP view. http://server:8080/jasperserverpro/olap/viewOlap.html?name =/supermart/RevenueAndProfit/Revenue_by_Store_Type&new =true Note: You can also pass a new query to the OLAP view using the “&mdx=<query>” parameter. Initiate the JasperServer Professional Ad Hoc Editor Example 12: Display the ad hoc topics page. http://server:8080/jasperserver-pro/flow.html?_flowId= adhocFlow Example 13: Retrieve an ad hoc report unit from the repository and open it in the Ad Hoc Editor. http://server:8080/jasperserver-pro/flow.html?_flowId= adhocFlow&adhocReport=/adhoc/aru/Adhoc_Report © 2009 Jaspersoft Page 19
Slide 20: Jaspersoft APIs – Integrating BI with your Application About Security It is important to keep in mind that the JasperServer repository is a secure repository, based on user profiles and roles. The default JasperServer installation requires users to authenticate; if they link to or try to update a resource for which they are not authorized, JasperServer returns an “access denied” message. Security is applied consistently across all access paths: browser, web services, and AJAX (JavaScript/XML). Security is implemented using Spring Acegi, and is therefore highly configurable to allow the use of non-standard and custom authentication and authorization services, single sign on, restricted web page access, and more. For more information on security configuration, including anonymous access, contact JasperSoft. © 2009 Jaspersoft Page 20
Slide 21: Jaspersoft APIs – Integrating BI with your Application JasperSoft API Benefits The JasperSoft APIs offer the fastest and most cost-effective way to incorporate professional, full-featured, and secure business intelligence into any application. With our APIs, providers of corporate, open source, and commercial software applications can: Enter new markets with a differentiated product that can include managed reporting, ad hoc reporting, and high-value analytics. Accelerate delivery schedules by customizing a complete solution rather than building and maintaining BI functionality inhouse. Build a competitive advantage and improve the value of your applications by seamlessly integrating high quality reporting and BI components. Reduce development, support, and overall COGS to improve profitability by embedding a fully supported, globally proven reporting and BI solution. To learn more about the JasperSoft APIs, try the examples and review the API Summary sections in this white paper. Developers and product managers interested in embedding JasperSoft technology into corporate, open source, and commercial applications can begin to learn about our flexible licensing options at http://www.jaspersoft.com/developers/. About JasperSoft: With more than 3 million downloads worldwide and more than 7,000 commercial customers in 96 countries, JasperSoft offers the most widely used open source business intelligence software in the world. The JasperSoft Business Intelligence Suite is comprised of an interactive reporting server, graphical and ad hoc report design interfaces, OLAP analysis, an ETL tool for data integration, and a Java reporting library for scalable small, medium, and large enterprises, for use as either standalone or embedded business intelligence applications. JasperSoft is based in San Francisco and is backed by leading venture capital firms Morgenthaler Ventures (www.morgenthaler.com), DCM (www.dcm.com), Partech International (www.partechvc.com), Scale Venture Partners and SAP © 2009 Jaspersoft Page 21
Slide 22: Jaspersoft APIs – Integrating BI with your Application Ventures. More information www.jasperforge.org. is available at www.jaspersoft.com and © Copyright 2009 Jaspersoft Corporation. All rights reserved. Jaspersoft, the Jaspersoft logo, Jaspersoft Business Intelligence Suite, JasperAnalysis, JasperServer, JasperETL, JasperReports, JasperStudio, iReport, Jasper4Salesforce, and Jasper4 products are trademarks and/or registered trademarks of Jaspersoft Corporation in the United States and in jurisdictions throughout the world. All other company and product names are or may be trade names or trademarks of their respective owners. © 2009 Jaspersoft Page 22

   
Time on Slide Time on Plick
Slides per Visit Slide Views Views by Location