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

levas

Members
  • Posts

    6
  • Joined

  • Last visited

 Content Type 

Profiles

Forum

Events

Featured Visualizations

Knowledge Base

Documentation (PDF Downloads)

Blog

Documentation (Test Area)

Documentation

Dr. Jaspersoft Webinar Series

Downloads

Everything posted by levas

  1. I have some changes I would like to contribute, so an answer that is not a question might be useful. Thanks.
  2. You are exactly correct. I just found this a day or so ago in updated documentation I found on the JasperSoft support site. I meant to post this answer but got busy and planned to do so when I got a chance. Thanks, Rob
  3. No answers... Is is that no one has been creating custom datasources, or no one has experienced the issue I am having?
  4. I am trying to create and install a custom data source for Jasper Reports Server 4.7.0. According what I have been reading all I need to do is Create implementations of the following: JRDataSource ReportDataSourceService JRQueryExecuter JRQueryExecuterFactory Create a resource bundle (to be placed in .../WEB-INF/bundles) for the data source creation screen Create an applicationContext-???.xml file (to be placed in .../WEB-INF) containing the following: <bean id="myCustomDataSource" class="com.jaspersoft.jasperserver.api.engine.jasperreports.util.CustomDataSourceDefinition"> <property name="factory" ref="customDataSourceServiceFactory"/> <property name="name" value="myCustomDataSource"/> <property name="serviceClassName" value="....MyCustomDataSource"/> <property name="propertyDefinitions"> <list> <map> <entry key="name" value="property1"/> <entry key="default" value="some value"/> </map> <map> <entry key="name" value="property2"/> <entry key="default" value="some other value"/> </map> <map> <entry key="name" value="repository"/> <entry key="hidden" value="true"/> <entry key="default" value-ref="repositoryService"/> </map> <map> <entry key="name" value="beanForInterfaceImplementationFactory"/> <entry key="hidden" value="true"/> <entry key="default" value-ref="dataSourceServiceFactories"/> </map> </list> </property> <property name="queryExecuterMap"> <map> <entry key="Custom" value="....MyCustomDataSourceQueryExecuterFactory"/> </map> </property> </bean> <bean class="com.jaspersoft.jasperserver.api.common.util.spring.GenericBeanUpdater"> <property name="definition" ref="addMessageCatalog"/> <property name="value" value="WEB-INF/bundles/myCustomDataSource_messages"/> <property name="valueType" value="stringList"/> </bean> After doing this and getting the files in the correct place on the server, I am able to create instances of my data source; however when I go to run a repor that uses my data source, I get net.sf.jasperreports.engine.JRException: net.sf.jasperreports.engine.JRRuntimeException: No query executer factory registered for the '...' language The report unit in question has my custom data source as its configured data source, and the report template specified my custom language as the query language. Walking through the Jasper Reports Server souce code, I found that when attemting to get the relevant QueryExecuterFactory from net.sf.jasperreports.engine.util.JRQueryExecuterUtils.getExecuterFactory(...), my factory is not found. This is becuase my custom language is not in the relevant ExecuterFactoryBundle map. Can anyone shed some light as to what I need to do to get my custom laguage (and associated QueryExecuterFactory) into that bundle/map? Thanks, Rob
  5. I am using iReport 3.6.2 (embedded in Netbeans) and have a custom datasource that I am migrating from the old iReport 3.0.0 stand-alone style. While migrating, among other changes, I changed the FieldsProvider from it.businesslogic.ireport.FieldsProvider to com.jaspersoft.ireport.designer.FieldsProvider. Then I place my custom data source jar in some directory and set the iReport classpath to point to it. For example I edit the ireport.properties file and create a line that looks like: IREPORT_CLASSPATH=;C\:\\Downloads\\JasperSoft\\iReport\\3.6.2\\iReport-3.6.2-src\\build\\testuserdir\\lib\\MyCustomDataSource.jar;C\:\\Downloads\\JasperSoft\\iReport\\3.6.2\\iReport-3.6.2-src\\build\\cluster\\modules\\ext\\jasperreports-extensions-3.5.3.jar When I run iReport I see the classpath set in the options. I also set up a query executor for my custom datasource, setting the language name, the executor factory class name and the fields provider class name. I am positive that the class names I set are correct. So when I create a report, edit the query, and set the language to my custom data source's language, a ClassNotFoundException is thrown. The exeption from the log file is included. I walked through the source and found that my when the class is being loaded by the class loader the excption is being thrown. This is around line 1276 in ReportQueryDialog.java. I assume is a classpath problem. any help on this would be appreciated. Thanks, Rob Code:java.lang.NoClassDefFoundError: com/jaspersoft/ireport/designer/FieldsProvider at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:621) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$000(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at org.netbeans.ProxyClassLoader.loadClass(ProxyClassLoader.java:211) at java.lang.ClassLoader.loadClass(ClassLoader.java:300) at java.lang.ClassLoader.loadClass(ClassLoader.java:300) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:247) at com.jaspersoft.ireport.designer.data.ReportQueryDialog.jComboBoxQueryTypeActionPerformed(ReportQueryDialog.java:1279) at com.jaspersoft.ireport.designer.data.ReportQueryDialog.access$1000(ReportQueryDialog.java:75) at com.jaspersoft.ireport.designer.data.ReportQueryDialog$5.actionPerformed(ReportQueryDialog.java:790) at javax.swing.JComboBox.fireActionEvent(JComboBox.java:1240) at javax.swing.JComboBox.setSelectedItem(JComboBox.java:567) at javax.swing.JComboBox.setSelectedIndex(JComboBox.java:603) at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(BasicComboPopup.java:816) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:273) at java.awt.Component.processMouseEvent(Component.java:6216) at javax.swing.JComponent.processMouseEvent(JComponent.java:3265) at javax.swing.plaf.basic.BasicComboPopup$1.processMouseEvent(BasicComboPopup.java:480) at java.awt.Component.processEvent(Component.java:5981) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4583) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4413) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150) at java.awt.Container.dispatchEventImpl(Container.java:2085) at java.awt.Window.dispatchEventImpl(Window.java:2475) at java.awt.Component.dispatchEvent(Component.java:4413) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:104) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178) at java.awt.Dialog$1.run(Dialog.java:1051) at java.awt.Dialog$3.run(Dialog.java:1103) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Dialog.show(Dialog.java:1101) at java.awt.Component.show(Component.java:1516) at java.awt.Component.setVisible(Component.java:1468) at java.awt.Window.setVisible(Window.java:841) at java.awt.Dialog.setVisible(Dialog.java:991) at com.jaspersoft.ireport.designer.menu.OpenQueryDialogAction.performAction(OpenQueryDialogAction.java:59) at org.openide.util.actions.CallableSystemAction$1.run(CallableSystemAction.java:118) at org.netbeans.modules.openide.util.ActionsBridge.doPerformAction(ActionsBridge.java:77) at org.openide.util.actions.CallableSystemAction.actionPerformed(CallableSystemAction.java:114) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.Component.processMouseEvent(Component.java:6216) at javax.swing.JComponent.processMouseEvent(JComponent.java:3265) at java.awt.Component.processEvent(Component.java:5981) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4583) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4413) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150) at java.awt.Container.dispatchEventImpl(Container.java:2085) at java.awt.Window.dispatchEventImpl(Window.java:2475) at java.awt.Component.dispatchEvent(Component.java:4413) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:104) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)Caused by: java.lang.ClassNotFoundException: com.jaspersoft.ireport.designer.FieldsProvider at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) ... 83 more
  6. I am trying to compile the iReport 3.5.2 from the sources via NetBeans 6.0.1 and am failing. There appears to be no docs related to this so I am posting it to the forum for help. When I build it, netbreans produces the following output in the "output" window of the build process: C:\Program Files\NetBeans 6.0.1\harness\suite.xml:58: Cannot open C:\Downloads\JasperSoft\iReport\3.5.2\iReport-nb-3.5.2-src\jasperreports-components\nbproject\project.xml BUILD FAILED (total time: 0 seconds) Any ideas on how I can compile this? Thanks, Rob
×
×
  • Create New...