No configuration was defined for birt engine

  • tdruttenberg
Posted: Fri, 05/28/2010 - 10:25

I am trying to integrate BIRT into a simple JSF project but am getting the error

No configuration was defined for birt engine

Here are the steps I followed:

  1. Created JSF project with facelets in eclipse (really jboss dev studio).
  2. Followed these instructions to install BIRT
    http://www.birt-exchange.org/wiki/Using_BIRT_and_Actuate_with_JavaServer_Faces(JSF)
  3. Using the report designer I created a very simple report and included it in the WebContent/reports folder.
  4. I created a simple index.xhtml facelets file and put it at the top of WebContent and then did a clean redeployment of the whole thing.

When I go to view index.xhtml I get the following error


13:23:09,451 SEVERE [viewhandler] Error Rendering View[/index.xhtml]
javax.faces.FacesException: javax.faces.FacesException: No configuration was defined for birt engine
at com.exadel.jsfbirt.engine.BirtRendererUtils.renderBirt(BirtRendererUtils.java:152)
at com.exadel.jsfbirt.renderkit.html.BirtWrapperRenderer.doEncodeBegin(BirtWrapperRenderer.java:162)
at com.exadel.jsfbirt.renderkit.html.BirtWrapperRenderer.encodeBegin(BirtWrapperRenderer.java:127)
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:813)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.faces.FacesException: No configuration was defined for birt engine
at com.exadel.jsfbirt.engine.BirtEngine.loadEngineProps(BirtEngine.java:125)
at com.exadel.jsfbirt.engine.BirtEngine.initBirtConfig(BirtEngine.java:50)
at com.exadel.jsfbirt.engine.BirtEngine.getBirtEngine(BirtEngine.java:60)
at com.exadel.jsfbirt.engine.BirtRendererUtils.renderBirt(BirtRendererUtils.java:134)
... 30 more

Help?

There is

  • maxkatz
  • 02/17/10
  • Fri, 05/28/2010 - 10:33

There is 'WEB-INF/platform/configuration/' folder with 'config.ini' file.

Copy it to source folder in the root to make it available for class loader resource searching.

Also, define this:

org.eclipse.birt.configPath
configuration/config.ini

The platform/configuration

  • tdruttenberg
  • 05/28/10
  • Fri, 05/28/2010 - 11:12

The platform/configuration directory already existed. that was part of the original instructions which I followed.

You said define this

org.eclipse.birt.configPath
configuration/config.ini

Define it where?

Sorry, the formatting was

  • maxkatz
  • 02/17/10
  • Fri, 05/28/2010 - 11:24

Sorry, the formatting was off: 

<context-param>
<param-name>org.eclipse.birt.configPath</param-name>
<param-value>configuration/config.ini</param-value>
</context-param>
 

Proud of myself because I

  • tdruttenberg
  • 05/28/10
  • Fri, 05/28/2010 - 11:29

Proud of myself because I figured that out myself. However, the going is still not smooth

This is what I get now.

14:28:08,908 SEVERE [viewhandler] Error Rendering View[/index.xhtml]
javax.faces.FacesException: org.eclipse.birt.report.engine.api.EngineException: The design file has error and can not be run.
at com.exadel.jsfbirt.engine.BirtRendererUtils.renderBirt(BirtRendererUtils.java:152)
at com.exadel.jsfbirt.renderkit.html.BirtWrapperRenderer.doEncodeBegin(BirtWrapperRenderer.java:162)
at com.exadel.jsfbirt.renderkit.html.BirtWrapperRenderer.encodeBegin(BirtWrapperRenderer.java:127)
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:813)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: org.eclipse.birt.report.engine.api.EngineException: The design file has error and can not be run.
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.openReportDesign(ReportEngineHelper.java:260)
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.openReportDesign(ReportEngineHelper.java:183)
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.openReportDesign(ReportEngineHelper.java:160)
at org.eclipse.birt.report.engine.api.impl.ReportEngine.openReportDesign(ReportEngine.java:347)
at com.exadel.jsfbirt.engine.BirtRendererUtils.renderBirt(BirtRendererUtils.java:140)
... 30 more
Caused by: Error.DesignFileException.INVALID_XML - 1 errors found!
1.) ( line = 0, tag = null) org.eclipse.birt.report.model.parser.DesignParserException (code = Error.DesignParserException.UNSUPPORTED_VERSION, message : The report file of version "3.2.21" is invalid for it is greater than the latest supported one.)

at org.eclipse.birt.report.model.parser.ModuleReader.readModule(ModuleReader.java:116)
at org.eclipse.birt.report.model.parser.DesignReader.read(DesignReader.java:88)
at org.eclipse.birt.report.model.core.DesignSessionImpl.openDesign(DesignSessionImpl.java:315)
at org.eclipse.birt.report.model.api.SessionHandleImpl.openDesign(SessionHandleImpl.java:294)
at org.eclipse.birt.report.engine.parser.ReportParser.getDesignHandle(ReportParser.java:158)
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.openReportDesign(ReportEngineHelper.java:255)
... 34 more
Caused by: org.eclipse.birt.report.model.parser.DesignParserException: The report file of version "3.2.21" is invalid for it is greater than the latest supported one.
at org.eclipse.birt.report.model.parser.ModuleState.parseAttrs(ModuleState.java:112)
at org.eclipse.birt.report.model.parser.ModuleParserHandler.startElement(ModuleParserHandler.java:245)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$ContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
at org.eclipse.birt.report.model.parser.ModuleReader.readModule(ModuleReader.java:94)
... 39 more
Caused by: org.eclipse.birt.report.model.parser.DesignParserException: The report file of version "3.2.21" is invalid for it is greater than the latest supported one.
at org.eclipse.birt.report.model.parser.ModuleState.parseAttrs(ModuleState.java:109)
... 53 more

Hello, Can you please clarify

  • amarkavtsov
  • 05/28/10
  • Thu, 06/03/2010 - 18:46

Hello,

Can you please clarify the BIRT runtime version you use and version of BIRT plugin for eclipse?
I see that exception caused by inconsistency of BIRT runtime and report design version.

Thank you.

I am also facing the same

  • sumeetsingh
  • 02/18/11
  • Tue, 02/22/2011 - 21:57

I am also facing the same problem. when i add configuration context parameter in my web.xml, then i got the following error:
java.lang.NullPointerException org.eclipse.birt.report.engine.api.impl.EngineTask$ParameterVisitor.visit(EngineTask.java:1286) org.eclipse.birt.report.engine.api.impl.EngineTask.doValidateParameters(EngineTask.java:654) org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:92) org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:75) com.exadel.jsfbirt.engine.BirtRendererUtils.runAndRender(BirtRendererUtils.java:231) com.exadel.jsfbirt.engine.BirtRendererUtils.renderBirt(BirtRendererUtils.java:148) com.exadel.jsfbirt.renderkit.html.BirtWrapperRenderer.doEncodeBegin(BirtWrapperRenderer.java:162) com.exadel.jsfbirt.renderkit.html.BirtWrapperRenderer.encodeBegin(BirtWrapperRenderer.java:127) javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:813) org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:275) org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:258) org.richfaces.renderkit.html.ModalPanelRenderer.doEncodeChildren(ModalPanelRenderer.java:368) org.richfaces.renderkit.html.ModalPanelRenderer.doEncodeChildren(ModalPanelRenderer.java:363) org.ajax4jsf.renderkit.RendererBase.encodeChildren(RendererBase.java:120) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837) org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:277) org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:258) org.richfaces.renderkit.html.PageRenderer.doEncodeChildren(PageRenderer.java:265) org.richfaces.renderkit.html.PageRenderer.doEncodeChildren(PageRenderer.java:254) org.ajax4jsf.renderkit.RendererBase.encodeChildren(RendererBase.java:120) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837) javax.faces.component.UIComponent.encodeAll(UIComponent.java:930) javax.faces.component.UIComponent.encodeAll(UIComponent.java:933) com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:266) com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:197) org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100) org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176) com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110) com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206) org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290) org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388) org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96

Have you tried downloading

  • maxkatz
  • 02/17/10
  • Thu, 02/24/2011 - 08:31

Have you tried downloading the sample applications and checking that your configuration matches?

Hi, In order to solve the

  • amarkavtsov
  • 05/28/10
  • Thu, 02/24/2011 - 14:14

Hi,

In order to solve the issue with configuration file please try to put it to both locations:
1. WEB-INF/platform/configuration/config.ini
2. /configuration/config.ini - java resources folder

In order to solve unsupported version error open report design file in text editor and change version from 3.2.21 to 3.2.20.
It should be fine.