Home
Analytics
Error :: MXReportDataSetProvider is not defined
Angel28
Hello everyone!!!
I read the problem of BIRTNEWB and the solutions. I find it very useful.
I am using BIRT 2.3.2 with Eclipse 3.4.2 from birt-report-designer-all-in-one-2_3_2_2. I am using a scripted data source maximoDataSource with DataSet dataSet. My sqlquery is a simple one.
select ponum from po;
When I am trying to see the preview results of dataSet, I am getting the following error.
A BIRT exception occurred.
Plug-in Provider:Eclipse.org
Plug-in Name:BIRT Data Engine
Plug-in ID:org.eclipse.birt.data
Version:2.3.2.r232_v20090521
Error Code:data.engine.BirtException
Error Message:A BIRT exception occurred: There are errors evaluating script "__bm_open()":
ReferenceError: "MXReportDataSetProvider" is not defined. (<inline>#2).. See next exception for more information.
There are errors evaluating script "__bm_open()":
ReferenceError: "MXReportDataSetProvider" is not defined. (<inline>#2).
I tried all the steps to correct this problem for the past 2 days. But still I am facing the same problem. I cant figure it out. I checked the mxreportdatasources.properties file. open, fetch script file.
Can anyone help me solve this problem?
Find more posts tagged with
Comments
johnw
You didn't copy the libraries somewhere. Below are steps I have in notes about installing Maximo into BIRT. You skipped one of the steps.
1. Verify or install BIRT 2.3.2, NOT 2.3.2.2) I have this as a note, I don?t remember why this is the case.
2. Copy the Plugin for Data Generation into the Eclipse/plugins folder. The plugin is located at:
http://www.birt-exchange.org/org/devshare/using-birt-with-maximo/1078-eclipse-plugin---maximo-report-generator-for-birt-reports/
*This step is only if you will use the plugin. It is a very useful utility if you are working with Maximo databases.
3. Install the Maximo data sources. These are typically located under the Maximo installation at: C:\maxapps\ibm\SMP\maximo\reports\birt\scriptlibrary\classes.
This folder needs to be copied into C:\BIRT\plugins\org.eclipse.birt.report.viewer\birt\WEB-INF\classes folder. The classes folder may need to be created.
(if they are using BIRT for Maximo (from the IBM site), this directory is already present and this step can be skipped. We only need to do this for a clean BIRT All-In-One install.
4. In the \birt\scriptlibrary\classes folder you will find mxDatasources.properties files, open and set the <dataSourceName> . to "maximoDatasource". Save this file into C:\BIRT\plugins\org.eclipse.birt.report.viewer\birt\WEB-INF\classes. If this is not done the Maximo plugin will never be called with the proper information.
5. Edit the mxreportdatasources.properties file (which should be in this folder from my previous documentation), and add the following line for Derby to work with the IBM classes:
*Note: this is for a Derby replica of the Maximo database. For an actual Maximo install, use the instructions from Step 6.
maximoDataSource.url=jdbc:derby:jar:(C:/contracts/maximo/Maximo/MaximoDBDerby.jar)MaximoDB maximoDataSource.driver=org.apache.derby.jdbc.EmbeddedDriver maximoDataSource.schemaowner=APP
6. Copy the MaximoDBDerby.jar file from the Installation folder to: eclipse\plugins\org.eclipse.birt.report.viewer_2.3.2.r232_20090212\birt\WEB-INF\lib
The MaximoDBDerby.jar does not go here. This jar is the actual database. They need to get the derby.jar file, usually located within their BIRT install folder at C:\Maximo\MaximoTest\eclipse\plugins\org.apache.derby.core_10.3.1.4. Copy the derby.jar file to that location.
For other databases the drivers referenced are as follows:
For Oracle, copy/paste oraclethin.jar
For SQL Server, copy/paste opta.jar
For DB2, copy/paste db2jcc.jar and db2jcc_license_cu.jar
These drivers are only used by the designer.
7. Copy the JDBC jar file to eclipse\plugins\org.eclipse.birt.report.data.oda.jdbc\drivers folder, otherwise the plugin for Maximo datasets will not work. This is very important, as it is NOT documented anywhere that the Maximo plugin expects this file here. If this is not done, data previews will not work.
8. Copy the JDBC jar file to eclipse\plugins\ org.eclipse.birt.report.viewer\birt\WEB-INF\classes folder as well for the maximo scriptlib to use. Rename the jar to .zip, and unzip it.
***This is very important; otherwise the scripts used to connect to Maximo will not work in the designer.
(
http://www.pr-inside.com/installing-birt-for-maximo-r1894796.htm
<--- above information about JDBC drivers was retrieved from here)
Angel28
Thanks Johnw for ur reply. But I did all the steps you mentioned above, very carefully. I have created reports with classic models sample database, flat data source, XML data source with Oracle database. All worked smoothly. Only I am having problem with scripted data source connecting to SQL database. The mxreportsources.properties file is :
<maximoDataSource>.url=jdbc:sqlserver://hostname:port;databaseName=db;integratedSecurity=false;
<maximoDataSource>.driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
<maximoDataSource>.username=maximo
<maximoDataSource>.password=maximo
<maximoDataSource>.schemaowner=dbo
In hostname I gave the ip address, in port the specified port number. The query is running in sql server 2008 with results.
I have disabled the Oracle properties in this properties file when I am working with SQL database. In window -> preferences I have specified the resource and templates.
I really don't know what cause can it be ?
johnw
And you did step 8? You unzipped the jar file in the classes folder for Oracle or Sql Server?
Angel28
For sql server I used sqljdbc.jar file. Then I used opta.jar. With this it is working fine
I don't know why sqljdbc is not working with birt 2.3.2. But whatever the reason is with opta it is working.
Thanks