Jump to content
We've recently updated our Privacy Statement, available here ×
  • JasperServer: workarounds for small problems


    I wrote about the integration between JasperServer and Microsoft Active Directory last October. One of the readers of the post, Andrés Arenas, drew my attention to a problem: if an person input its user name one time in lowercases, another in uppercases, Jasper Reports Server creates two users in its repository. Here you have an excerpt of a screenshot that shows the problem clearly:

    JasperServer Screenshot

    Fortunately, if you follow the best practice of assigning permissions to the Active Directory groups imported, you won’t have problems. I’m sure that the solution to this issue would be to patch the source code that imports the users, but for a systems administrator this isn’t practical. A quick way to avoid this problem is to edit the file $JASPERSERVER_HOME/apache-tomcat/webapps/jasperserver/WEB-INF/jsp/templates/login.jsp and change the line:

      <input id="j_username" name="j_username" type="text"/>

    for

      <input id="j_username" name="j_username" type="text"     style="text-transform:lowercase;" onkeyup="javascript:this.value=this.value.toLowerCase();"/>

    On the other hand, I recently had to design a report for a tracking system where each user just could see its own data, not those saved by others. Therefore, the SQL statement must include the user name within the WHERE clause. My first option was to create a parameter named LoggedInUser of the class com.jaspersoft.jasperserver.api.metadata.user.domain.User and put this clause:

     where username = $P{LoggedInUser}.getFullName()

    But I got the following exception:

      com.jaspersoft.jasperserver.api.JSExceptionWrapper: Report design not valid :     1. Parameter type not supported in query : LoggedInUser class     com.jaspersoft.jasperserver.api.metadata.user.domain.User

    A workaround to this problem is to create another string parameter, LoggedInUserName, and assign the expression $P{LoggedInUser}.getFullName() as its default value.


    User Feedback

    Recommended Comments

    There are no comments to display.



    Guest
    This is now closed for further comments

×
×
  • Create New...