Symptom
- Exception thrown while viewing a CR report by Umanaged RAS Java SDK.
- Error 500--Internal Server Error
java.lang.IncompatibleClassChangeError: Implementing class
Reproducing the Issue
- Set up umanaged RAS Java SDK in a RAS environment using the sample jsp named OpenReport from https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10a5bc2e-2b81-2b10-38b8-b30c152c0929
- Copy all the jars from folder C:\Program Files\Business Objects\common\3.5\java\lib and it's sub folders to lib of this unmanged RAS web application.
- Deploy this web app to Weblogic which is installed on Redhat Linux.
- Set CLASSPATH :/opt/software/bea/jdk150_11/lib:/opt/software/bea/jdk150_11/jre/lib
- View a report that contains a graph and subreport by this web application.
- Exception "java.lang.IncompatibleClassChangeError: Implementing class" is thrown.
- CR Server XIR2
- RedHat Linux Enterprse 5.2
- Weblogic 10.01 Linux
Cause
- Either there are some mismatched jar files or there is error with the classpath.
- The error message hints there is incompatibility between MetafileRenderer.jar and ReportViewer.jar. Typically, this could be ignored as the MetafileRenderer.jar classes should take precedence over ReportViewer.jar classes.
Resolution
- Remove ReportViewer.jar and ReportPrinter.jar files from this web application and restart web application.
- ReportViewer.jar and ReportPrinter.jar are the client-side Java Report viewer applets and are not required in the Java Web App Server lib folder.
Keywords
KBA , BI-DEV-JAV , BI Software Development Kits (SDKs) - Java , Problem
Product
Crystal Reports Server XI R2