Hello everyone,<br />
<br />
i don't understand how to use the PlatformContext. I'm trying to make a .war and deploy it to a Tomcat 6. <br />
If i set the BirtHome (EngineHome) using an absolute path outside of WEB_INF everything works perfectly. But i'd like to put the BirtHome in the .war file.<br />
<br />
I tried using the example <a class='bbc_url' href='
http://wiki.eclipse.org/Servlet_Example_(BIRT)_2.1'>Servlet Example (BIRT) 2.1 - Eclipsepedia</a> and read the chapter "Setting up a stand alone or WAR file enviroment" from the "Integrating and Extending Birt" book but i keep getting:<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>
Mar 6, 2009 2:09:14 PM Run doGet
SEVERE: null
java.lang.NullPointerException
at BirtEngineFactory.createEngineInstance(BirtEngineFactory.java:67)
at BirtEngineFactory.getReportEngine(BirtEngineFactory.java:50)
at Run.doGet(Run.java:68)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
</pre>
<br />
i'm calling from a servlet that method:<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>
private static void createEngineInstance(ServletContext context) throws BirtException {
EngineConfig engineConfig = new EngineConfig();
engineConfig.setEngineHome("");
IPlatformContext iContext = new PlatformServletContext(context);
engineConfig.setPlatformContext(iContext);
Platform.startup(engineConfig);
IReportEngineFactory factory = (IReportEngineFactory) Platform.createFactoryObject(IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY);
reportEngine = factory.createReportEngine(engineConfig);
}
</pre>
<br />
And doing a debug the factory object is null

<br />
<br />
Regards,<br />
<br />
Rali