2.3.1 基本的なコーディング方法(ライブラリ)
ここでは、Amazon S3出力機能のコーディングに関して説明するため、biz-Streamライブラリを利用したPDFを生成するユーザ・アプリケーションがすでにあるものとします。
アプリケーションの開発方法およびレイアウトの作成方法に関しては「PDF出力ガイド」や「レイアウト・デザイナ ガイド」をご覧ください。
Amazon S3へ出力を行うためには、既存のPDF生成アプリケーションに対して、PDF生成エンジンの出力先に指定していた出力ストリームを AmazonS3OutputStream のインスタンスに変更します。
最も簡単なPDFを生成するユーザ・アプリケーションは以下のように記述できます。
public void makePdf( ) { try{ PDFEngine pdf = new PDFEngine("${base-dir}/sample/test.pdf"); XMLSuper xml = new JaxpXML("layout.xml", pdf); xml.parse(); xml.setPageSize(); xml.calcDataSize(); xml.toPDF(); xml.close(); }catch(Exception e){ e.printStackTrace(); } }
これをAmazon S3への出力に移行する場合、次の赤行のような変更を加えることになります。
public void makePdftoAmazonS3( ) { try{ AmazonS3OutputStream s3 = new AmazonS3OutputStream(); //s3.setAccessKey("xxx"); //s3.setSecretKey("xxx"); //s3.setServiceEndpoint("https://s3.amazonaws.com"); //s3.setRegion("ap-northeast-1"); //s3.setBucketName("BucketName"); //s3.addTag("Owner", "TEST"); //s3.setProxyHost("proxy"); //s3.setProxyPort(8080); s3.setFilePath("Sample/AmazonS3Sample1.pdf"); PDFEngine pdf = new PDFEngine(s3); XMLSuper xml = new JaxpXML("layout.xml", pdf); xml.parse(); xml.setPageSize(); xml.calcDataSize(); xml.toPDF(); xml.close(); }catch(Exception e){ e.printStackTrace(); } }