sabertooth Posted August 7, 2006 Share Posted August 7, 2006 Hello, we use jasperreports 1.2.4 and have a very strange problem. The application server is an orion webserver 2.0.6 with jdk 1.5.0_04 We have several reports which run perfectly without any problems.But one report (uses scriptlet) has this strange behavior: The first user(user a) request in the webapplication with a servlet the report and get the report.After that a second user (user b) request also the same report but receive nothing. Only the message that the datasource is null.We analysed the situation and followed the error messages to the method setParameter(JRFillParameter parameter, Object value) in the JRFillDataset-Class.The cause is when the Datasource is set by the method setParameter the statement If(parameter.getValueClass().isInstance(value)) is true for User A and for User B=false. So we change the source (see bottom of the thread) that no JRException is thrown but without any affect. This behavior is only in one report and when different users with different computers request the report from the webserver. Any Ideas ? protected void setParameter(JRFillParameter parameter, Object value) throws JRException { if (value != null) { if (parameter.getValueClass().isInstance(value)) { parameter.setValue(value); } else { //new Code //changed since exception was always thrown //if munic users tried to print. Seems to be a java bug. parameter.setValue(value); System.err.println("Incompatible " + value.getClass().getName() + " value assigned to parameter " + parameter.getName() + " in the " + getName() + " dataset." ); }// old code// throw new JRException(// "Incompatible " // + value.getClass().getName() // + " value assigned to parameter " // + parameter.getName() // + " in the " + getName() + " dataset."// );// } } else { parameter.setValue(value); } } Link to comment Share on other sites More sharing options...
teodord Posted August 7, 2006 Share Posted August 7, 2006 Hi, We are currently tracking something that seems to be related to the Orion class loaders. So for no significant progress has been made on this.Maybe you could add some feedback on this. http://jasperforge.org/sf/go/artf1373?nav=1 Thank you,Teodor Link to comment Share on other sites More sharing options...
meinolf Posted September 6, 2006 Share Posted September 6, 2006 Hi there,I found a workarround to this problem.Therefore I modified net.sf.jasperreports.engine.fill.JRFillDataset and replaced all JRClassLoader.loadClassForName by this.getClass().getClassLoader().loadClass Since than it works properly. BestMS Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now