Views

FAQ

From Wiki

Jump to: navigation, search

JasperServer and JasperAnalysis FAQ

Contents


What is the difference between JasperServer Community Edition and JasperServer Professional?

JasperServer Community Edition is Jaspersoft's free, open source reporting and analysis server, based on JasperReports, Mondrian, JPivot and Spring. It is licensed under the GPLv2.

JasperServer Professional Edition is a commercially licensed reporting and analysis server based on JasperServer Community Edition. It is "visible" source - code comes with Professional Edition, but it is not free. As of v3.5 (April 2009), the Professional Edition extensions beyond the Community Edition include:

  • Interactive web based "ad hoc" report development and data exploration (AJAX) against any data source
  • End user query through the browser, based on "data domains" which include data level security. A web based domain designer is provided. JDBC only at this stage.
  • In-memory data access and calculation engine to support ad hoc. Includes server management like query governing
  • Dashboards made up of multiple reports, images and external web content can be designed through the browser (AJAX)
  • User profile based data level security for OLAP analysis, beyond simple roles
  • Performance tuning and management tools
  • Multi-tenant enabled to support "business intelligence as a service" for SaaS vendors and organizations that share JasperServer across customers or departments
  • Complete translations of the JasperServer user interface and documentation for English, French, German, Spanish and Japanese (Chinese coming soon)
  • Out of the box support to allow JasperServer to run in a large variety of application servers and databases for the repository. JasperServer Community Edition and Professional Edition can connect to a wide variety of databases for reporting and analysis through JDBC

For more information see Jaspersoft.com

I need to add validation to the parameters on a report, like make sure that one date is after another date. Or I need to customize the look and feel of the parameters

You need a custom parameter page for the report unit.

You can copy WEB-INF/jsp/DefaultParametersForm.jsp and modify that to insert the validation. Then you can set the parameter form name on your report unit.


What is this time zone on a data source? Why are the dates in my report off by a day?

JasperServer can convert date/time values from the database server time zone to a different time zone for your reports, like you store dates in the database in GMT, but want to display them in some other time zone. You do this by setting the time zone for the report unit JDBC or JNDI data source.

In most cases, you don't need to set the time zone on the data source. Dates will appear in the database server time zone. If you do set a time zone on the data source in error, you will see dates being displayed incorrectly by 1 day.

Here is an example of the issue: [1]


How do I embed JasperServer in my existing web application?

  • Web services

You can use web services to browse the JasperServer repository, run reports and get content. Your application controls the web services calls. Refer to the JasperServer web services guide.

  • Put JasperServer screens into your portal in an iFrame

You can customize the JasperServer screens to your calling application's look and feel with SiteMesh decorators removing menus etc.

  • Use the JasperServer portlet

There is a JSR168 portlet for JasperServer that uses web services to communicate. It is packaged for Liferay, but you can adapt it for other portal servers. JasperServer security is managed automatically by the portlet.

You will need to work out your security approach for applications embedding JasperServer. See the next FAQ item.


Security between JasperServer and other applications

With Web services and embedding JasperServer screens in your application, you will have to be clear on how security is managed between the JasperServer and your applications.

  • Ideally, a single sign on system should be used to authenticate users in common between applications. CAS, Cosign and JAAS are open source options. There are a variety of commercial single sign on vendors, like SiteMinder and Tivoli.
  • You can set up anonymous access, so that users do not have to authenticate. This means "no security", of course, but maybe acceptable in your case. See this post, which sets unauthenticated or "anonymous" users to be admininistrators. You can also set anonymous users to ROLE_USER, which will allow them to act as "normal" users - they can run reports, but not edit them.
  • User name and password can be embedded in URLs or via HTTP Basic. JasperServer can be configured to use the same authentication source as your application, using the given user name and password. Again this is not secure, but is simple.
  • Customized for your situation. JasperServer uses the Spring Acegi framework for authentication and authorization. This can be configured or extended for your needs. See AuthenticationConfiguration.

How do I customize the look and feel of JasperServer?

JasperServer uses SiteMesh to give a consistent look and feel. You can change the SiteMesh templates of JasperServer in WEB-INF/decorators to suit your needs or create your own. You can do things like provide different look and feel depending on URLs, user roles etc. main.jsp is the default decorator.

How do I change the home page for users?

Find WEB-INF/jsp/home.jsp (Community) and WEB-INF/jsp/home/home.jsp. Here you can add logic into determine what page (JSP) you want to include. This could be based on user role, like:

<authz:authorize ifAllGranted="ROLE_DEMO">

   <%@ include file="homeForDemo.jsp" %>

</authz:authorize>

How do I configure JasperServer for performance and scalability?

Excellent thread here [2]

Add More Topics Here

Registered JasperForge users can edit this wiki. You can try adding test information to this topic. Then, create your own topic.