1

Adobe LiveCycle ConvertPDF サービスを使用して大きな PDF ファイルを変換しています。

これは小さな PDF ファイルでは問題なく機能しますが、大きな PDF ファイル (約 150 MB - 質問しないでください) を変換しようとすると失敗します。

アドビは、トランザクションのタイムアウトを約 14 分 (?) に設定しているようです。巨大な PDF の処理時間がこの時間を超えるため、操作が中断されます。複数の PDF を試したので、これは入力ファイルの破損が原因であるとは考えられません。

例外が生成する出力は次のとおりです。

com.adobe.livecycle.convertpdfservice.exception.ConvertPdfException: ALC-DSC-000-000: com.adobe.idp.dsc.DSCException: Internal error.
    at com.adobe.convertpdf.docservice.ConvertPdfServiceImpl.toPS2WithSMT(ConvertPdfServiceImpl.java:117)
    at com.adobe.convertpdf.docservice.ConvertPdfServiceImpl.toPS2(ConvertPdfServiceImpl.java:93)
    [...]
Caused by: ALC-DSC-000-000: com.adobe.idp.dsc.DSCException: Internal error.
    at com.adobe.convertpdf.docservice.ConvertPdfServiceImpl$1.doInTransaction(ConvertPdfServiceImpl.java:110)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionBMTAdapterBean.doRequiresNew(EjbTransactionBMTAdapterBean.java:218)
    [...]
Caused by: com.adobe.livecycle.convertpdfservice.exception.ConvertPdfException: Cannot convert PDF file to PostScript. 
Exception: "Transaction timed out: Couldn't connect to Datamanager Service"
    at com.adobe.convertpdf.ConvertPdfBmcWrapper.convertPdftoPs(ConvertPdfBmcWrapper.java:207)
    at com.adobe.convertpdf.ConvertPdfServer.convertPdftoPs(ConvertPdfServer.java:121)
    at com.adobe.convertpdf.docservice.ConvertPdfServiceImpl.toPS2InTxn(ConvertPdfServiceImpl.java:129)
    [...]

これまでのところ - 論理的に思えます。

ただし、トランザクションの長さが設定されている場所が見つかりません。タイムアウトを 30 分程度に延ばせば、問題は解決すると思います。(また、トランザクションなしでこの操作を呼び出す方法があれば、問題は解決します...)

単純に次のように実行しているとしましょう:

ServiceClientFactory factory = com.adobe.idp.dsc.clientsdk.ServiceClientFactory.createInstance(connectionProps);

ConvertPdfServiceClient convertPDFClient = new com.adobe.livecycle.convertpdfservice.client.ConvertPdfServiceClient(factory);

// ... set-up details skipped ...
com.adobe.idp.Document result_postscript = convertPDFClient.toPS2(inPdf,options);
result_postscript.copyToFile(new File("c:/Adobe/output.ps"))

ただし、ServiceClientFactory を正しく設定していないか、JBoss 構成を正しく読み取っていない可能性があるため、トランザクションをより長く存続させる方法が見つかりません。(トランザクションの生存時間は本当に問題ですか?)

4

2 に答える 2

1

LiveCycle製品ブログのこのエントリも役立つ可能性があります:http: //blogs.adobe.com/livecycle/2008/10/livecycle_processing_big_docum.html

于 2009-08-30T17:10:55.790 に答える