2015-02-06 4 views
0

현재 BO 4.1 관련 도구를 마이그레이션하려고합니다. 이 도구는 드롭 위치에서 BO Server로 Crystal 보고서를 배포하는 데 사용됩니다. 이 도구는 BO XI 3.1 Java SDK 코드를 사용하여 개발되었으며 BI 4.1으로 마이그레이션됩니다.CrystalDecisions ReportSDKIllegalArgumentException

코드에서 InfoStore를 쿼리하여 IInfoObjects 인스턴스를 가져옵니다. 쿼리가 더 infoObjects 현재 사용할 수 없으며 코드가 따라서 다음 코드

IReport report = (IReport) infoObjects.add(pluginInfo); 
을 사용하여 또한 코드가 생성됩니다

infoStore.newInfoObjectCollection(); 

를 사용하여의 iReport를 새로운 infoObjects 모음을 만들

"SELECT TOP 1 * FROM CI_INFOOBJECTS WHERE SI_KIND='CrystalReport' AND SI_NAME ='XXXX' AND SI_INSTANCE = 0" 

사용

이 실행 중 다음 예외가 발생합니다

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)

나는 예외를 찾고 주위에 몇 가지 jar 불일치 문제가 있지만 어떤 jar 및 그 jar를 찾을 수 있는지 이해할 수 없었다. 제안 사항이 도움이 될 것입니다.

답변

1

CrystalReportsSDK.jar을 프로젝트에 포함하십시오.

누락 된 클래스에 대한 jar 파일을 찾는 데 도움이되는 여러 가지 유틸리티가 있습니다. jar 디렉토리에서 unzip -l *.jar > jars.txt을 수행 한 다음 jars.txt에서 누락 된 클래스를 검색하십시오.

+0

고마워요! BI 4.1 디렉토리에서 CrystalReportsSDK.jar입니까? 내가 찾아야하는 위치를 공유해 주시겠습니까? – bhaumikananda

0

고마워요! 항아리를 추가하면 문제를 해결하는 데 도움이되었습니다. 내가 물었던 두 번째 질문에 대답하려면 항아리의 위치에 대해

{Installation loc}/opt/businessobjects/bo41/sap_bobj/enterprise_xi40/java/lib