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)
Birt Engine exception with Rational 8
hbtmus
Hi All,
I am new to Birt and this is my first experience. I try to launch a birt report in a servlet code. Development environment is IBM Rational 8.
If I run it as a Java program it works. The same code is not working on the servelt!
All help is very appreciated.
Thanks
Herbert
CODE:
try{
EngineConfig config = new EngineConfig( );
config.setLogConfig("c:/Spirit/birtlog", Level.FINE);
//config.setEngineHome( "C:/birtruntime/ReportEngine" );
Platform.startup( config ); //If using RE API in Eclipse/RCP application this is not needed.
IReportEngineFactory factory = (IReportEngineFactory) Platform
.createFactoryObject( IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY );
IReportEngine engine = factory.createReportEngine( config );
engine.changeLogLevel( Level.WARNING );
IReportRunnable design = engine.openReportDesign("C:/Spirit/workspace/SpiritReport/test.rptdesign");
//Create task to run and render the report,
IRunAndRenderTask task = engine.createRunAndRenderTask(design);
//Setup rendering to PDF
IRenderOption options = new RenderOption();
options.setOutputFormat("pdf");
options.setOutputFileName("C:/Spirit/birtReports/test.pdf");
PDFRenderOption pdfOptions = new PDFRenderOption( options );
task.setRenderOption(pdfOptions);
//run and render report
task.run();
task.close();
engine.destroy();
Platform.shutdown();
}catch( Exception ex){
ex.printStackTrace();
}
STACKTRACE:
[2/23/12 9:58:50:568 EST] 0000005e SystemErr R org.eclipse.birt.core.exception.BirtException: error.CannotStartupOSGIPlatform
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at org.eclipse.birt.core.framework.Platform.startup(Platform.java:81)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ymcaatlanta.spirit.development.report.controllers.BirtTestReport.onEvent(BirtTestReport.java:65)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.comappspec.casservice.webapp.CASCommand.execute(CASCommand.java:140)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.comappspec.casservice.webapp.CASApplication.executeRequest(CASApplication.java:175)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.comappspec.casservice.webapp.CASServlet.executeEvent(CASServlet.java:284)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.comappspec.casservice.webapp.CASModuleServlet.doGet(CASModuleServlet.java:102)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1147)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:722)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:449)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1020)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:883)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1659)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:276)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1648)
[2/23/12 9:58:50:583 EST] 0000005e SystemErr R Caused by: org.eclipse.birt.core.framework.FrameworkException: Cant register the ExtensionRegistry classpath
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R at org.eclipse.birt.core.framework.jar.ServiceLauncher.startup(ServiceLauncher.java:99)
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R at org.eclipse.birt.core.framework.Platform.startup(Platform.java:75)
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R ... 30 more
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R Caused by: org.eclipse.core.runtime.CoreException: Extension registry provider is already set.
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R at org.eclipse.core.internal.registry.RegistryProviderFactory.setDefault(RegistryProviderFactory.java:31)
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R at org.eclipse.core.runtime.RegistryFactory.setDefaultRegistryProvider(RegistryFactory.java:129)
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R at org.eclipse.birt.core.framework.jar.ServiceLauncher.startup(ServiceLauncher.java:84)
[2/23/12 9:58:50:599 EST] 0000005e SystemErr R ... 31 more
Find more posts tagged with
Comments
JasonW
Do you know what version of BIRT is being used? I assume earlier than 3.7. If so you need to set a birt home:
//config.setEngineHome( "C:/birtruntime/ReportEngine" );
Jason
hbtmus
<blockquote class='ipsBlockquote' data-author="'JasonW'" data-cid="96872" data-time="1330402923" data-date="27 February 2012 - 09:22 PM"><p>
Do you know what version of BIRT is being used? I assume earlier than 3.7. If so you need to set a birt home:<br />
//config.setEngineHome( "C:/birtruntime/ReportEngine" );<br />
<br />
Jason<br /></p></blockquote>
<br />
<br />
Thanks Jason,<br />
<br />
I found a workaround:<br />
<br />
I added this statement:<br />
<br />
RegistryProviderFactory.releaseDefault(); <br />
<br />
It's working now.<br />
Thanks
JasonW
Before calling RegistryProviderFactory.releaseDefault() look at this thread:
http://www.eclipse.org/forums/index.php/m/727929/#msg_727929
Make sure to only startup the platform once for the web app as this is very expensive.
Jason