BIRT без рамки OSGi - PullRequest
       4

BIRT без рамки OSGi

2 голосов
/ 30 августа 2010

Привет, в настоящее время мы пытаемся интегрировать BIRT в наше автономное настольное приложение, используя примеры из здесь .

Вопрос в том, как избежать использования платформы OSGi. Можем ли мы поместить все необходимые библиотеки и плагины в получившийся EAR, не устанавливая механизм отчетов в исходное состояние? Потому что наши клиенты не будут рады необходимости загружать дополнительное время выполнения. И действительно ли существует необходимость в таком огромном времени выполнения (я думаю, около 100 мегабайт).

Ответы [ 2 ]

1 голос
/ 17 мая 2016

Начиная с Birt 3.7, вы можете использовать Birt POJO Runtime (вы можете проверить на сайте Birt ).

Единственное, что вам нужно сделать, это не позвонить EngineConfig.setEngineHome(engineHome)

Если вы будете следовать веб-сайту Birt , ваш код будет выглядеть следующим образом:

try{
    final EngineConfig config = new EngineConfig( );
    //As of 3.7.2, BIRT now provides an OSGi and a POJO Runtime.

    //config.setEngineHome( "C:\\birt-runtime-2_6_2\\birt-runtime-2_6_2\\ReportEngine" );
    config.setLogConfig("c:/temp", Level.FINE);

    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 );
}catch( Exception ex){
    ex.printStackTrace();
}
// Run reports, etc.
...

// destroy the engine.
try
{
    engine.destroy();
    Platform.shutdown();
    //Bugzilla 351052
    RegistryProviderFactory.releaseDefault();
}catch ( EngineException e1 ){
    // Ignore
}
0 голосов
/ 14 сентября 2010

Извините, но на самом деле нет способа запускать отчеты BIRT без запуска OSGi. Можно обрезать некоторые модули, если вы их не используете. Например, график можно удалить, но графики не будут работать. Очевидно, что вы можете удалить пример базы данных и плагины дерби, которые ее поддерживают.

После этих очевидных вещей удалить плагины становится намного сложнее.

...