10 Replies Latest reply: Oct 9, 2012 4:01 AM by Izaak van Niekerk RSS

Birt 3.7

Busssard Buss Newbie

Is it possible configure a Web Application created by Jboss Tools 3.3M2 to use Birt 3.7.

 

I managed to set up with jsf4birt, but now I wanna use the seam tags only, but it seems a lot more complicated make the configurations by hand.

 

Could someone help me fulfiil this mission ?

  • 1. Re: Birt 3.7
    Snjezana Peco Expert

    The JBoss BIRT Integration doesn't work correctly with JBT 3.3/BIRT 3.7.

    See https://issues.jboss.org/browse/JBIDE-9299

  • 2. Re: Birt 3.7
    Busssard Buss Newbie

    I was thinking in just use the seam tags to render reports created by Birt Report Designer, not the complete integration.

     

    For now I'm creting test reports with JNDI connection and ANSI SQL to create the datasets and using jsf4birt tags to render. The application was created by Jboss Tools 3.3M2 and I'm wondering if I can use the xmlns:b="http://jboss.com/products/seam/birt" tags.

  • 3. Re: Birt 3.7
    Busssard Buss Newbie

    I did it !

     

    My steps:

     

    1 - First create a new Seam Web Application with Birt face and make sure its working properly.

    2 - Create a new Seam Web Application and download  Birt runtime 3.7.0 copy birt-runtime-3_7_0/ReportEngine/lib to WebContent/WEB-INF/lib

    3 - copy the following jars from /WebContent/WEB-INF/lib

      jboss-birt-servlet.jar

      jboss-seam-birt.jar

      viewservlets.jar

      axis.jar

      commons-discovery-0.2.jar

    4 - Copy this files to the new WA:

      /WebContent/WEB-INF/tlds

      /WEB-INF/viewer.properties

      /WEB-INF/server-config.wsdd

    5 - Create this pastes:

      documents

      scriptlib

      report

      report/images

      logs

    6 - Add this to the web.xml

     

    I can render my test report created with a separeted report Desing using:

     

    <b:birt designType="embed" designName="AnexoI.rptdesign"

              embeddable="true">

              <b:param name="reportTitle" value="Customers Contacts" />

              <b:param name="Cust" value="543" />

    </b:birt>

     

    I hope there's no more insues :

  • 4. Re: Birt 3.7
    Sarah Shalaby Newbie

    Hi Buss

     

    I love your steps I was looking for something like this for 2 weeks.

    But for step 6 where is the code to add to web.xml?

     

    Thanks

    Sarah

  • 5. Re: Birt 3.7
    Sarah Shalaby Newbie

    Also I cannot find these jars

      jboss-birt-servlet.jar

      jboss-seam-birt.jar

     

    in /WebContent/WEB-INF/lib

     

    Thanks

    Sarah

  • 6. Re: Birt 3.7
    Busssard Buss Newbie

    Oops, I forgot it. It's here now:

     

    6 - Add this to the web.xml

     

      <description>Deployment Descriptor for BIRT Viewer. Please check and specify the following settings.</description>

      <context-param>

        <description>Flag whether the report resources can only be accessed under the working folder. Defaults to false</description>

        <param-name>WORKING_FOLDER_ACCESS_ONLY</param-name>

        <param-value>false</param-value>

      </context-param>

      <context-param>

        <description>Temporary document files directory. Defaults to ${Context Root}/documents</description>

        <param-name>BIRT_VIEWER_DOCUMENT_FOLDER</param-name>

        <param-value>documents</param-value>

      </context-param>

      <context-param>

        <description>Flag whether to allow server-side printing. Possible values are ON and OFF. Defaults to ON</description>

        <param-name>BIRT_VIEWER_PRINT_SERVERSIDE</param-name>

        <param-value>ON</param-value>

      </context-param>

      <context-param>

        <description>Memory size in MB for creating a cube.</description>

        <param-name>BIRT_VIEWER_CUBE_MEMORY_SIZE</param-name>

        <param-value></param-value>

      </context-param>

      <context-param>

        <description>Directory where to store all the birt report script libraries (JARs).. Defaults to ${Context Root}/scriptlib</description>

        <param-name>BIRT_VIEWER_SCRIPTLIB_DIR</param-name>

        <param-value>scriptlib</param-value>

      </context-param>

      <context-param>

        <description>Temporary images/charts directory. Defaults to ${Context Root}/report/images</description>

        <param-name>BIRT_VIEWER_IMAGE_DIR</param-name>

        <param-value>report/images</param-value>

      </context-param>

      <context-param>

        <description>BIRT viewer extended configuration file</description>

        <param-name>BIRT_VIEWER_CONFIG_FILE</param-name>

        <param-value>WEB-INF/viewer.properties</param-value>

      </context-param>

      <context-param>

        <description>Preview report rows limit. An empty value means no limit.</description>

        <param-name>BIRT_VIEWER_MAX_ROWS</param-name>

        <param-value></param-value>

      </context-param>

      <context-param>

        <description>Max cube fetch rows levels limit for report preview (Only used when previewing a report design file using the preview pattern). Defaults to return all levels</description>

        <param-name>BIRT_VIEWER_MAX_CUBE_ROWLEVELS</param-name>

        <param-value></param-value>

      </context-param>

      <context-param>

        <description>Default locale setting</description>

        <param-name>BIRT_VIEWER_LOCALE</param-name>

        <param-value>en-US</param-value>

      </context-param>

      <context-param>

        <description>Max cube fetch columns levels limit for report preview (Only used when previewing a report design file using the preview pattern). Defaults to return all levels</description>

        <param-name>BIRT_VIEWER_MAX_CUBE_COLUMNLEVELS</param-name>

        <param-value></param-value>

      </context-param>

      <context-param>

        <description>Report resources(design files or document files) directory for preview. Defaults to ${Context Root}</description>

        <param-name>BIRT_VIEWER_WORKING_FOLDER</param-name>

        <param-value></param-value>

      </context-param>

      <context-param>

        <description>Report Engine logs directory. Default to ${Context Root}/logs</description>

        <param-name>BIRT_VIEWER_LOG_DIR</param-name>

        <param-value>logs</param-value>

      </context-param>

      <context-param>

        <description>Resource location directory (library files, images files or others). Defaults to ${Context Root}</description>

        <param-name>BIRT_RESOURCE_PATH</param-name>

        <param-value></param-value>

      </context-param>

      <context-param>

        <description>Flag whether to force browser-optimized HTML output. Defaults to true</description>

        <param-name>HTML_ENABLE_AGENTSTYLE_ENGINE</param-name>

        <param-value>true</param-value>

      </context-param>

      <context-param>

        <description>Report engine log level. (ALL|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|OFF)</description>

        <param-name>BIRT_VIEWER_LOG_LEVEL</param-name>

        <param-value>WARNING</param-value>

      </context-param>

      <listener>

        <listener-class>org.eclipse.birt.report.listener.ViewerHttpSessionListener</listener-class>

      </listener>

     

      <listener>

        <listener-class>org.eclipse.birt.report.listener.ViewerServletContextListener</listener-class>

      </listener>

     

     

      <servlet>

        <servlet-name>EngineServlet</servlet-name>

        <servlet-class>org.eclipse.birt.report.servlet.BirtEngineServlet</servlet-class>

        <load-on-startup>1</load-on-startup>

      </servlet>

      <servlet>

        <servlet-name>ViewerServlet</servlet-name>

        <servlet-class>org.eclipse.birt.report.servlet.ViewerServlet</servlet-class>

        <load-on-startup>1</load-on-startup>

      </servlet>

      <servlet-mapping>

        <servlet-name>ViewerServlet</servlet-name>

        <url-pattern>/frameset</url-pattern>

      </servlet-mapping>

      <servlet-mapping>

        <servlet-name>EngineServlet</servlet-name>

        <url-pattern>/document</url-pattern>

      </servlet-mapping>

      <servlet-mapping>

        <servlet-name>EngineServlet</servlet-name>

        <url-pattern>/download</url-pattern>

      </servlet-mapping>

      <servlet-mapping>

        <servlet-name>EngineServlet</servlet-name>

        <url-pattern>/parameter</url-pattern>

      </servlet-mapping>

      <servlet-mapping>

        <servlet-name>EngineServlet</servlet-name>

        <url-pattern>/extract</url-pattern>

      </servlet-mapping>

      <servlet-mapping>

        <servlet-name>ViewerServlet</servlet-name>

        <url-pattern>/run</url-pattern>

      </servlet-mapping>

      <servlet-mapping>

        <servlet-name>EngineServlet</servlet-name>

        <url-pattern>/preview</url-pattern>

      </servlet-mapping>

      <servlet-mapping>

        <servlet-name>EngineServlet</servlet-name>

        <url-pattern>/output</url-pattern>

      </servlet-mapping>

      <filter>

        <filter-name>ViewerFilter</filter-name>

        <filter-class>org.eclipse.birt.report.filter.ViewerFilter</filter-class>

      </filter>

      <filter-mapping>

        <filter-name>ViewerFilter</filter-name>

        <servlet-name>EngineServlet</servlet-name>

      </filter-mapping>

      <filter-mapping>

        <filter-name>ViewerFilter</filter-name>

        <servlet-name>ViewerServlet</servlet-name>

      </filter-mapping>

      <servlet>

        <servlet-name>JBoss BIRT Servlet</servlet-name>

        <servlet-class>org.jboss.tools.birt.servlet.JBossBirtServlet</servlet-class>

      </servlet>

      <servlet-mapping>

        <servlet-name>JBoss BIRT Servlet</servlet-name>

        <url-pattern>/embed</url-pattern>

      </servlet-mapping>

  • 7. Re: Birt 3.7
    Busssard Buss Newbie

    You can find these jars from the new Seam Web Application with Birt face created with JBossTools

  • 8. Re: Birt 3.7
    Juan Vidal Luis Newbie

    Does the integration between JBTools 3.3 and BIRT 3.7 has been solved?

     

    I follow those instructions but it just doesnt seems to work.

     

    Thanks in advance if you could help me

  • 9. Re: Birt 3.7
    Busssard Buss Newbie

    I'm using Jboss 3.3 M2 and this version has a wizar to Birt 3.7, but I in order to work with seam birt tags I had needed to add the jar's and tdl's described here and this to my web.xml:

     

    <servlet>

        <servlet-name>JBoss BIRT Servlet</servlet-name>

        <servlet-class>org.jboss.tools.birt.servlet.JBossBirtServlet</servlet-class>

      </servlet>

      <servlet-mapping>

        <servlet-name>JBoss BIRT Servlet</servlet-name>

        <url-pattern>/embed</url-pattern>

      </servlet-mapping>

  • 10. Re: Birt 3.7
    Izaak van Niekerk Newbie

    We are trying to do the same thing (more or less); trying to integrate Birt (4.2.1) with JSF 2.0.

    I have followed this forum and tried to implement the same structure but unfortunately without any success.

     

    In essence I created a web project and included the jboss-birt-servlet.jar in my WEB-INF/lib/ folder.

    I also copy-pasted all of the jars from the birt runtime (4.2.1) from "birt-runtime-4_2_1\WebViewerExample\WEB-INF\lib"

    into the WEB-INF/lib/ folder.

     

    I don't need the jboss-seam-birt.jar right? As this is not really making use of Seam?

     

    I have added the configuration to my web.xml (as directed by Bussard )

     

    Furthermore I have my report folder in WebContent/Reports/my_report.rptdesign.

     

    And the very basic tag in my facelet:

     

    <b:birt designName="Customers.rptdesign" designType="embed" format="html" embedded="true">

    </b:birt>

     

    When I deploy this (to Glassfish 3.1.2.2 - is this ok?) I get the error message:

     

    Unable to find config file.  Creating new servlet engine config file: /WEB-INF/server-config.wsdd

     

    I must confess that I didn't use the JBoss Tools plugin for Eclipse but rather created the project as a "Dynamic Web Project".

    Is this a problem?

     

    Important to note that after the error message on the Glassfish console, the page is still accessible and I can see my Primefaces components, but the report is never displayed?

     

    Am I missing something in my project perhaps?

    One thing I might be missing; Bussard mentions the following:

     

    4 - Copy this files to the new WA:

      /WebContent/WEB-INF/tlds

      /WEB-INF/viewer.properties

      /WEB-INF/server-config.wsdd

     

    Where do I find these files and are they important?

    Any help/suggestions will be appreciated.