Jump to content
We've recently updated our Privacy Statement, available here ×

kmansfield

Members
  • Posts

    11
  • Joined

  • Last visited

kmansfield's Achievements

Apprentice

Apprentice (3/14)

  • Week One Done
  • One Month Later
  • One Year In
  • First Post Rare
  • Collaborator Rare

Recent Badges

0

Reputation

  1. I oppened a support case several weeks ago for issue 3, #00008550, but am waiting on a response. Any work around to reduce the time would be greatly appreciated. I did implement my own caching, but it was marginal time savings since the loop is killing things. I opened also bugs for each item in the tracker: 0003921: Modify RepoUser hibernate config file to batch load 0003920: Modify Jasper to use hibernate caching to improve performance problems 0003922: HibernateRepositoryServiceImpl.findByName gets called in a hibernate loop and slows performance
  2. My current performance bottleneck is the query is (3) HibernateRepositoryServiceImpl.findByName and it is definitely querying redundantly with the same criteria it seems like hibernate session cache is not being invoked with the criteria. This coupled with the fact that the hibernate filter is looping one by one and returning redundant rows which each get queried upon. I guess I can try to implement my own cache to band aid the problem, but are there other ideas to fix the root problem that would be more appropriate?
  3. We are running a jasper server instance with many roles and it are running into performance problems when running the run report or schedule report flow. jasperserver-pro v 2.1.0. Can someone please tell me why the DetachedCriteria is being used. I'm thinking of removing this to increase performance. I think this is causing a couple of problems: 1) I'm guessing DetachedCriteria disables lazy instantiation, thus when the hibernate class RepoUser via the UserAuthorityServiceImpl.getRepoUser(), it is very sluggish since it proactively loads (not lazy instantiation) all the roles 1 round trip query at a time. I fixed this bottleneck by changing the RepoUser.hbm.xml to changed lazy="true" to be batch-size="1000" and it works much, much faster, like 5x faster. 2) I'm guessing that this doesn't use the hibernate cash and thus I'm seeing multiple loads of the same objects which obviously have not changed in the repository, for example the same RepoUser will be loaded several times as in (1) when creating input control wrappers. 3) Also I'm seeing pretty bad performance in HibernateRepositoryServiceImpl.findByName which gets called in a loop via a hibernate filter, I'm not sure this is a problem caused by DetachedCriteria, but I'm still trying to figure out how to fix this and if anyone has any ideas, I would appreciate it. Keith
  4. I see posts on users asking about the cascading input controls and that it is currently not supported by jasperserver. I wonder if anyone has a good work-around and a sample code on how to do this? Cascading input controls for example allow user to select a country in the first control and then a city select auto-populates in the second control based upon the user's country selection. Here is a post with more information on the cascading enhancement. cascading input post I'm also tempted to contribute a more formal solution to the project, but I doubt my boss will give me the time and thus need to do a work-around first. Are there any proposed architecture in case I have more time? Thanks, Keith
  5. Thanks for everyone's help. The Sales by Month Report was a good example at accessing jasperserver's user session information. On the custom session parameter front, what I did was to implement my own user session cache and during authentication in our custom acegi provider, the parameters are set into the cache with the username being the key to the cache. The reports then use the jasperserver user object to retrieve the username and then reference the singleton user session cache using the username to get the custom parameters. I implemented the user session cache with some custom code and ehcache and placed it into a custom jar that I deploy to jasper's WEB-INF/lib directory. I also created a stub, pre-populated users session cache so that developers can easily test these custom parameters in i-report developer studio outside of jasperserver. Out of container the stub gets instantiated and in container the real version is instantiated. Going forward, we may change the implementation to extend Jasper's User object to hold the parameters instead of using the custom user session cache, but this is a more invasive customization.
  6. I would like to store objects in the jasper server HTTP User session and then be able to retrieve them for use by IReport parameters. Are there any mechanisms in jasperserver and iReports to accomplish this? Another idea is just write my own cache implementation to retrieve at report generation, although I didn't see a way to get specific user id via iReport Parameters? Are there any other recommendations? Background: I have some customized acegi authentication mechanisms that authenticates and loads user info from another server once upon login and this info will be used in report generation for displaying and filtering of data. We are a reseller so company id and name are used to filter data appropriately and for displaying reports with company specific data. Also, these parameters should not be set or seen by the user to ensure user doesn't have access to another companies' data. Thanks, Keith
  7. I'm a bit embarrassed, but it appears to have worked for me since I was already logged to jasper in another tab:( I played around with it more and was not able to get (a) both login and (b) report flow execution done in a single URL. I am able to do either stand alone and was able to get flow execution working by allowing anonymous users to the flow execution URL. There are two threads that discuss the configuration required to allow anonymous users to execute flows: http://www.jasperforge.org/index.php?option=com_joomlaboard&Itemid=&func=view&catid=10&id=35796#35796 http://www.jasperforge.org/index.php?option=com_joomlaboard&Itemid=&func=view&catid=10&id=35615#35615 Anonymous users may not be a good option due to security concerns, but I guess basic authentication (passing username and password in the URL) is not the very secure either. Keith
  8. This URL seems to work for me and uses the sample reports installed by jasper: http://localhost:8080/jasperserver-pro/flow.html?_flowId=viewReportFlow&reportUnit=/reports/samples/Employees&j_acegi_security_check?&j_username=jasperadmin&password=password If you are not using jasperserver pro, then the url should be: http://localhost:8080/jasperserver/... I'm new to jasper so not sure of the details. This post has more information: http://www.jasperforge.org/index.php?option=com_joomlaboard&Itemid=&func=view&catid=10&id=29604#29604 Keith
×
×
  • Create New...