This section provides information on integrating Yellowfin into an existing application or intranet. This allows for seamless user and data integration, and for the replication of user security at the report data level.
Integration Methods
- Tight Integration: This method embeds Yellowfin as a re-branded, tightly integrated portal. This is done by creating a seamless link between the parent application and Yellowfin, without making the end-user aware that they have navigated from the parent application to another. This involves customizing Yellowfin with the custom header and footer with links that navigate to the third-party application. The user will easily experience the full range of Yellowfin features within the external website.
- Web Services: This method is used to manage communications between third-party applications and Yellowfin by using web services. Yellowfin provides a Java web service API for connecting to SOAP web services, but it is also possible to connect using any other programming language or environment. This method requires advanced developer knowledge, but provides flexible navigation.
- JavaScript API: This method lets Yellowfin reports and dashboards to be embedded into an external web page using scriptlets. This method makes for a quick and easy way to integrate Yellowfin, without the need for advanced developer knowledge.
- IFrames: Yellowfin widgets can be integrated into external interfaces using IFRAME. This provides for a seamless user experience with full Yellowfin functionality.
Choosing a Method
Choosing one method over the other, depends on your company's requirements and technical abilities. Consider the following cases to help you decide on a method:
Tight Integration
- Requires Yellowfin to be loaded into an external page, with custom header and footers added with links to your application. Tight integration can be loaded via iFrames also.
- Gives you control on the information to share with your users. You can provide them with a few interactive dashboards, reports, etc. with the same level of security. Or share the full range of functionality.
- Have the flexibility to include further Yellowfin functionality in the future.
- Allows you to control the exact functionalities your users can access, depending on their role function.
- Allows users to single sign-on into Yellowfin.
- Requires some development knowledge to write header/footer JSPs to pass relevant data to your application. (Yellowfin includes some examples of these in the \Yellowfin\Development\Examples directory.)
- The header and footer would require restyling to maintain your corporate brand. Click here to learn how to do this.
- This is the most recommended and widely used integration method.
JavaScript API
- Applying this method is suitable in cases where you want to quickly embed a chart or report into your website. This is a quick way to expose users to information, along with limited interactivity.
- The basic JavaScript method is a simple way to share information for public consumption, but with the advanced option, data can be filtered.
- This requires next to no development experience or knowledge.
- Supports single sign-on.
- Access to other Yellowfin functionality (such as the view builder, report list, administration, etc.) will not be provided.
- Only recommended if there is a requirement to share a chart or report.
IFrames
- Loads Yellowfin into your website by using IFrame tags.
- Single sign-on is possible.
- This method is not as secure as the other ones.
- Issues related to browser display can also arise.
- This is merely a means of embedding; one of the other integration methods would still be required.
Web Services
- This method uses web services to perform actions in your application that are passed to Yellowfin.
- Grants you with the most flexibility on the functionality to be included for your users.
- Requires developers with advanced knowledge of writing web services API.
- Supports single sign-on.
- Not all Yellowfin tasks can be performed with this option (such as setting configuration options).
- Reports can be displayed in your application and specified to use certain accounts.
Open Source Libraries
Free Open Source Software (FOSS) Statement
Yellowfin ships with some restrictive open source libraries. Yellowfin does not link to or directly reference these libraries, and Yellowfin’s use of these libraries is in compliance with each applicable open source license. Yellowfin is designed to compile independently and without reference to these open source libraries. It is, however, technically possible for a Yellowfin partner or end user to alter the Yellowfin application – for example, by adding additional pages and/or plug-ins and/or libraries – which could directly or by combination with those libraries, violate the open-source licenses applicable to the libraries shipped with Yellowfin. There are numerous situations where such license violations could occur, including, but not limited to, incorporation of database drivers and authentication processes into the Yellowfin environment.
The Yellowfin partner, or end user, must ensure that any additions or modifications to the Yellowfin code do not enhance or extend, in any manner, the scope of use of the open source libraries shipped by Yellowfin beyond the scope of use originally utilized by Yellowfin and do not link to or directly reference those libraries.
Yellowfin disclaims all liability and responsibility for any violation of any open source license caused by additions or modifications to the Yellowfin code.