View Full Version : Booting the SDK engine in an application server
02-16-2012, 12:23 PM
I get the following error when trying to deploy the reporting SDK in an app server (JBoss):
ERROR [AbstractBoot] class org.pentaho.reporting.engine.classic.core.ClassicEngineBoot failed to boot:
java.lang.IllegalStateException: Booting the report-engine failed.
I have the pentaho-reporting-engine-classic-core-3.8.3-GA.jar available and have de-compiled various JARS to see what is wrong, it looks like the config file in the aforementioned jar is not being read though I am not sure. Please advise, there is nothing relevant in the forums or on the internet.
02-16-2012, 02:48 PM
Why do you decompile a JAR from an Open-Source project. Wouldn't it be quicker to go and grab the sources and look at them instead?
Go to: http://source.pentaho.org/viewvc/ to browse the reporting source code.
Go to: svn://source.pentaho.org/pentaho-reporting/ to grab the code.
Have a look at the error *before* that Boot-failed notification. This would then tell you what is wrong.
02-16-2012, 05:02 PM
Thanks for your reply, there are no errors before the booting failure, only some info messages and warn messages. I put them in another question on this forum, the one called "Running the pentaho SDK reporting engine in JBoss". These messages relate to the abstract booter unable to load classes and various classes not being of the expected interface, please could you have a look at that thread? Maybe I should close that thread if it is the same issue.
The error to me suggests incompatible jars though the very same jars work fine outside of an app server. The code looks as if it should work, modules are defined in an xml file and should be loaded on startup.
I also tried a jboss-classloader xml file as suggested for jboss version 5 on another forum though this didn't work. I don't think I have any jar confusion on my classmate as the errors relate specifically to Pentaho, not more common libraries like log4j or javamail. I am pretty stuck on this one, any help appreciated. For info I'm using version 3.8.3-GA of core Pentaho and Pentaho extensions jars.
02-17-2012, 02:55 PM
I've got it working now, so I hope this helps someone else. The problem is down to classloaders. Various classes could not be loaded by the Pentaho classloaders. If u are using tomcat or jboss I suggest downloading the Pentaho BI community edition which comes with a customized version of tomcat. Copy the classloader xml file from pentaho/web-inf into your tomcat and remove the references to a parent ear file. Make sure you've got the reporting sdk jars into your web-inf/lib. If like me you use report designer to create the report .prpt files you will most likely need a few jars copied from the report designer lib folder as well, I used barbecue, classic-wizard and a couple of other jars, error messages when you try and boot or run your embedded java code that processes prpt files should make it clear what u are missing.
For jboss, its basically the same. Put the classloaders xml file from Pentaho BI (can't remember xml file exact name) again with parental ear refs removed in your war file. Web-inf. Watch out for jar conflicts if like me u have other libs wrapped up in your ear, any error about 'not of expected type' is most likely a jar clash of duplicate jars of different versions. Note that this works on jboss 5.
Regarding jboss, u may find old distributions of sdk engine that are for jboss, didn't work for me esp on jboss version 5. Also the jboss comments on internet about editing jboss-web.xml or jboss-app.xml didn't work.
Anyway follow as above and it all works! Woop Woop! I am so clever! Pls reply to shower me with praise if this helps u I spent days on this and am now basking in glory!