Reputation: 41
I am currently working on a migration of BO 4.1 related tool. The tool is used to deploy the crystal reports from drop location to BO Server. The tool was developed using BO XI 3.1 Java SDK code and will be migrated to BI 4.1.
In the code it is getting IInfoObjects instance by querying infoStore. Query used
"SELECT TOP 1 * FROM CI_INFOOBJECTS WHERE SI_KIND='CrystalReport' AND SI_NAME ='XXXX' AND SI_INSTANCE = 0"
There is no infoObjects available currently and the code hence create a new infoObjects collection by using
infoStore.newInfoObjectCollection();
Further the code will create IReport using the following code
IReport report = (IReport) infoObjects.add(pluginInfo);
During this execution I am getting following exception
Exception in thread "main" java.lang.NoClassDefFoundError: com/crystaldecisions/sdk/occa/report/lib/ReportSDKIllegalArgumentException at com.crystaldecisions.sdk.plugin.desktop.report.internal.ReportFactory.makePlugin(ReportFactory.java:83) at com.crystaldecisions.sdk.occa.pluginmgr.internal.PluginMgr.getPluginInterface(PluginMgr.java:349) at com.crystaldecisions.sdk.occa.infostore.internal.InfoObjects.add_aroundBody0(InfoObjects.java:775) at com.crystaldecisions.sdk.occa.infostore.internal.InfoObjects.add_aroundBody1$advice(InfoObjects.java:512) at com.crystaldecisions.sdk.occa.infostore.internal.InfoObjects.add(InfoObjects.java:1)
I searched around for the exception and it appears some jar mismatch issue, but could not understand which jar and where can I find those jars. Any suggestion will be helpful.
Upvotes: 0
Views: 1568
Reputation: 41
Thanks! Adding the jar helped me to resolve the problem. To answer the second question that I asked, about the location of the jars
{Installation loc}/opt/businessobjects/bo41/sap_bobj/enterprise_xi40/java/lib
Upvotes: 0
Reputation: 6827
Include CrystalReportsSDK.jar in your project.
There are a number of utilities to help with finding jar files for missing classes. I prefer the cheap approach -- just do unzip -l *.jar > jars.txt
from a jar directory, then search jars.txt for the missing class.
Upvotes: 2