2012-02-20 11 views
2

Zend Server Java Bridgeを実行して正常にテストできましたが、Birt EngineをZend Server Java Bridgeと連携させる方法に関する情報は見つかりません。誰かがこれを働かせる方法を考え出しましたか?私はBIRTを実行するためにBIRT APIをダウンロードする場所を見つけることができ、同じ問題に直面していますZend Server CEとBIRTとJavabridgeとの統合

レポート

F

viewtopic.php?= 44 &トン= 9452 &のp = 30950 & hilit = BIRT#p30950

誰かが例を持っていれば...してください...私にそれを行う方法を示す... ありがとう。

+0

私は最新のzendバージョンを使用しています。私はzirt java bridgeを使用してbirtレポートを実行しようとしていますが、zends birt apiを見つけることはできません。私はそこにくっついている。私はtomcatまたはPHP javabridgeを使用することはできません。私は正常に動作するテストされているzend javabridgeとbirtのレポートを統合する必要があります。レポートの実行方法 –

+1

特に何をお探しですか? https://encrypted.google.com/search?q=zend+birtで十分な結果が得られます。 – Gordon

+0

私は、zendのjavabridgeとzendフレームワークでbirtの報告を実装しようとしています。しかし、私はbirtの報告を実装するためのbirt APIが欠けています。 –

答えて

1

3.7ランタイムをダウンロードした場合は、レポートを実行するコマンド コマンドをビルドすることができます。添付は簡単な例です。 をビルドするには、クラスパスのランタイム のダウンロード/ reportengine/libディレクトリからjarファイルがあることを確認してください。一度あなたを構築した は、それを簡単なJavaアプリケーションと同じ方法と呼ぶことができるはずです。この サンプルはプラットフォームの起動とシャットダウンを行いますが、多くのレポートを生成する場合は、一般的には という良い考えはありません。より良い 解決策は、サーバーの起動時に開始する シングルトンでプラットフォームの起動とレポートエンジンの作成をラップしてから、エンジンを使用して要求ごとに新しいタスクを作成することです( )。

import java.util.logging.Level; 

import org.eclipse.birt.core.framework.Platform; 
import org.eclipse.birt.report.engine.api.EXCELRenderOption; 
import org.eclipse.birt.report.engine.api.EngineConfig; 
import org.eclipse.birt.report.engine.api.EngineConstants; 
import org.eclipse.birt.report.engine.api.EngineException; 
import org.eclipse.birt.report.engine.api.HTMLRenderOption; 
import org.eclipse.birt.report.engine.api.HTMLServerImageHandler; 
import org.eclipse.birt.report.engine.api.IReportEngine; 
import org.eclipse.birt.report.engine.api.IReportEngineFactory; 
import org.eclipse.birt.report.engine.api.IReportRunnable; 
import org.eclipse.birt.report.engine.api.IRunAndRenderTask; 
import org.eclipse.birt.report.engine.api.PDFRenderOption; 
import org.eclipse.birt.report.engine.api.RenderOption; 
import org.eclipse.birt.report.engine.api.impl.RunAndRenderTask; 
import org.eclipse.birt.report.engine.api.script.IReportContext; 


public class RunAndRenderTaskTest { 

public void runReport() throws EngineException 
{ 

RunAndRenderTask task=null; 
IReportEngine engine=null; 
EngineConfig config = null; 

try{ 
config = new EngineConfig(); 
//config.setLogConfig("c:/dwn", Level.SEVERE); 
//config.setResourcePath("C:/work/workspaces/3.7.1workspaces/BIRT 
Metal/APIs/resources"); 
Platform.startup(config); 

IReportEngineFactory factory = (IReportEngineFactory) Platform 
.createFactoryObject( 
IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY); 
engine = factory.createReportEngine(config); 


IReportRunnable design = null; 
//Open the report design 

design = engine.openReportDesign("Reports/testlibrary.rptdesign"); 
task = (RunAndRenderTask) engine.createRunAndRenderTask(design);  
IReportContext irc = task.getReportContext(); 
//task.setParameterValue("Top Count", (new Integer(5))); 
//task.validateParameters(); 


//HTMLRenderOption options = new HTMLRenderOption();  
//options.setImageDirectory("./"); 
//options.setOutputFileName("output/resample/external.html"); 
//options.setOutputFormat("html"); 
//options.setEmbeddable(false); 
//options.setEnableMetadata(true); 
//options.setEnableInlineStyle(false); 
//options.setEnableAgentStyleEngine(true); 
//options.setEnableCompactMode(true); 

//PDFRenderOption options = new PDFRenderOption(); 
//options.setOutputFileName("output/resample/hidefooter.pdf"); 
//options.setSupportedImageFormats("PNG;GIF;JPG;BMP;SWF;SVG"); 
//options.setOutputFormat("pdf"); 

//EXCELRenderOption options = new EXCELRenderOption(); 
//options.setOutputFormat("xls"); 
//options.setOutputFileName("output/resample/customers.xls"); 
//options.setWrappingText(true); 

HTMLRenderOption options = new HTMLRenderOption(); 
//options.setImageHandler(new HTMLServerImageHandler()); 
options.setSupportedImageFormats("JPG;PNG;BMP;SVG;GIF"); 
options.setOutputFileName("output/resample/testlibrary.html"); 
options.setOutputFormat("html"); 
//options.setOutputFormat("ppt"); 



task.setRenderOption(options); 
task.run(); 

irc = task.getReportContext(); 

task.close(); 
engine.destroy(); 
}catch(Exception ex){ 
ex.printStackTrace(); 
} 
Platform.shutdown(); 
System.out.println("Finished"); 



} 


/** 
* @param args 
*/ 
public static void main(String[] args) { 
try 
{ 

RunAndRenderTaskTest ex = new RunAndRenderTaskTest(); 
ex.runReport(); 

System.exit(0); 

} 
catch (Exception e) 
{ 
e.printStackTrace(); 
} 
} 
} 
+1

私は必ずこれを試してみます –

2

Zend_Birtを参照することができますZendのプラットフォーム上でBIRTの統合に関するいくつかの情報は、Zend FrameworkののだけはZendプラットフォームの一部ではない私を発見しました。 Zend Server CE afaikの一部ではありません。しかし、BIRT API is a Java API。したがって、Zend Server's JavaBridge APIを使用すると、PHPのBIRT APIとインターフェースすることができます。あなたが探しているZend_Birt APIは、そのための単なるラッパーです。またJavaBride経由detailed blogpost explaining how to use BIRT reporting without Zend Platformあり

からコピーをつかむしようとすることができます。明らかに、BIRTランタイム環境に直接接続します。

関連する問題