In reference to http://community.jaspersoft.com/wiki/multiple-datasources-ireport-lists-...
I've followed these instructions, switched language to "Groovy", and pasted my jdbc driver in just about every /lib/ I can find. Also, this was working just fine yesterday. I'm dead in the water on this.
My setup:
- I have a primary datasource that works well, the main query returns values.
- I have a secondary datasource that tests successfully, and if I use it in another dataset, records are returned.
- As soon as I add a parameter to the main report, java.sql.Connection, with the default expression, java.sql.DriverManager.getConnection("jdbc:rssbus:salesforce:user=aaa;password=bbb;AccessToken=ccc","aaa","bbb")
I get this error:
Filling report... Locale: English (United States) Time zone: Default Error filling print... Error evaluating expression : Source text : java.sql.DriverManager.getConnection("jdbc:rssbus:salesforce:user=aaa;password=bbb;AccessToken=ccc","aaa","bbb") net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression : Source text : java.sql.DriverManager.getConnection("jdbc:rssbus:salesforce:user=aaa;password=bbb;AccessToken=ccc","aaa","bbb") at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:263) at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:611) at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:579) at net.sf.jasperreports.engine.fill.JRFillDataset.setFillParameterValues(JRFillDataset.java:996) at net.sf.jasperreports.engine.fill.JRFillDataset.setParameterValues(JRFillDataset.java:637) at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1313) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:931) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:873) at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:87) at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:287) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:760) at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:891) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) Caused by: java.sql.SQLException: No suitable driver found for jdbc:rssbus:salesforce:user=aaa;password=bbb;AccessToken=ccc at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at java_sql_DriverManager$getConnection.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:124) at MonthlyReport45v1_1407358374503_946504.evaluate(calculator_MonthlyReport45v1_1407358374503_946504:166) at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:250) ... 13 more Print not filled. Try to use an EmptyDataSource...
(Also I have my classpath set to the driver jar)
I am instead using a subreport with this alternate datasource, and passing it the connection parameter. That seems to be working for now.