Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
IllegalAccessError in ExtensionManager.initialize
PHelgren
I get the following stack trace when I run a standalone app that generates a Birt report. The curious thing is that I do NOT get this error on my development machine (Windows) but I do when I deploy it to my target server (i5/OS). This is a stand alone app that is not running within any servlet container.
(Partial Stack trace)
Exception in thread "main" java.lang.IllegalAccessError: org/eclipse/birt/report/model/metadata/ExtensionManager.initialize()V at org.eclipse.birt.report.model.api.impl.DesignEngineImpl.initialize
(DesignEngineImpl.java:106)
at org.eclipse.birt.report.model.api.impl.DesignEngineImpl.newSessionHandle(DesignEngineImpl.java:149)
at org.eclipse.birt.report.model.api.DesignEngine.newSessionHandle(DesignEngine.java:108)
at org.eclipse.birt.report.engine.parser.ReportParser.getDesignHandle
(ReportParser.java:143)
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.openReportDesign(ReportEngineHelper.java:251)
This seems to be an environment thing but I have compared jars and classpaths and still can't get to the bottom of this. What would cause an IllegalAccessError in this method?
Find more posts tagged with
Comments
PHelgren
The fix was found by running in -verbose mode in java. The verbose setting gave me the clue I needed: It wasn't the jars that I suspected. In Birt there is a /lib folder but many classes get loaded from the /plugins folder. I had deleted the /lib and replaced it several times but I hadn't suspected anything else lurking until I ran the -verbose mode and saw all of the jars loading from /plugins. So I deleted the whole ReportEngine folder on the server (IBM i) and copied the working version from my Windows machine and it all started working.
The the IllegalAccessError was really just telling me that I had some jars that were a mismatch on version.