`
jxqc_job
  • 浏览: 529 次
社区版块
存档分类
最新评论
收藏列表
标题 标签 来源
获取Birt报表引擎对象 获取birt报表引擎对象
import javax.servlet.ServletContext;
import org.eclipse.birt.core.framework.IPlatformContext;
import org.eclipse.birt.core.framework.Platform;
import org.eclipse.birt.core.framework.PlatformServletContext;
import org.eclipse.birt.report.engine.api.EngineConfig;
import org.eclipse.birt.report.engine.api.IReportEngine;
import org.eclipse.birt.report.engine.api.IReportEngineFactory;
/**在java web中创建报表引擎对象的工厂*/
public class BirtEngineFactory {
	private static IReportEngine birtEngine = null;

	public static synchronized IReportEngine getBirtEngine( ServletContext sc ) {
		if (birtEngine == null) {
			EngineConfig config = new EngineConfig();
			config.setBIRTHome("");
			IPlatformContext context = new PlatformServletContext( sc );
			config.setPlatformContext( context );
			try{
				Platform.startup( config );
				IReportEngineFactory factory = ( IReportEngineFactory )
				Platform.createFactoryObject( 
				IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY );
				birtEngine = factory.createReportEngine( config );
			}catch ( Exception e ) { 
				e.printStackTrace( ); 
			}
		}
		return birtEngine;
	}
}
Global site tag (gtag.js) - Google Analytics