WVS と Adobe Experience Manager サーバーの統合
Adobe Experience Manager Assembler は、DDX ファイルで定義されている命令セットを処理するサーバーベースのアプリケーションです。DDX とは、PDF 出力ファイルの定義に使用される宣言型マークアップ言語です。WVS と Adobe Experience Manager サーバーの統合の目的は、Adobe Experience Manager サーバーが製品表現に保存されている PDF ファイルを修正できるようにすることです。たとえば、CAD 図面のパブリッシングで、図面の PDF ファイルをコンテンツとした製品表現を作成するよう設定できます。この統合を使用することにより、図面の PDF を Adobe Experience Manager サーバーで処理できます。この Windchill Visualization Services との統合には、2 とおりの用途があります。
• PDF ファイル用の Acrobat Reader 拡張機能を追加することで、Creo View および Adobe Reader でマークアップ機能が使用できるようになります。
• PDF ファイルにウォーターマークを追加するには、DDX テンプレートに定義された命令を使用します。これによりウォーターマークが PDF ファイルに直接追加されます。これは、表示または印刷の際にウォーターマークを追加する Creo View のウォーターマーク機能とは対照的です。
PDF ドキュメントの送付状をカスタマイズすることもできます。送付状をカスタマイズする方法の詳細については、WTDocument Coversheets Configuration and Customization Guide を参照してください。
Adobe Experience Manager サーバーの設定
Windchill Visualization Services と Adobe Experience Manager サーバーの連携を設定するには、マスターサイトで次のプロパティを変更します。これには xconfmanager コマンドを使用するか、<Windchill>/site.xconf ファイルを手動で編集し、ファイルを xconfmanager -p に反映します。
|
• Adobe Experience Manager サーバーは、 edrload.livecycle.assembler.serviceurl と edrload.livecycle.assembler.credentialalias の 2 つの WVS プロパティを使用して設定します。これらを含む wvs.properties ファイルの詳細については、 Windchill Visualization Service のプロパティを参照してください。
• Windchill 10.2 以降では、wvs.properties およびwvs.properties.xconf ファイルの場所に変更があります。これらのファイルは <Windchill>/codebase ディレクトリから <Windchill>/codebase/WEB-INF/conf ディレクトリに移動されています。この場所の変更を反映して、コードに必要な変更を加えてください。
|
1. プロパティの値を次のように設定します。
◦ xconfmanager コマンドを使用する場合は、値を次のように設定します。
xconfmanager -t <Windchill>/codebase/WEB-INF/conf/wvs.properties -s “edrload.livecycle.assembler.serviceurl= http://使用するライフサイクルサーバーのホスト名/soap/services/AssemblerService”
◦ site.xconf ファイルを手動で編集する場合は、次の値を追加します。
<Property name="edrload.livecycle.assembler.serviceurl" overridable="true" targetFile="codebase/WEB-INF/conf/wvs.properties"
value="使用するライフサイクルサーバーのホスト名/soap/services/AssemblerService"/>
2. オプション - PDF 用の Acrobat Reader 拡張機能の適用に使用する信頼できるエイリアスを設定します。
◦ xconfmanager コマンドを使用する場合は、値を次のように設定します。
xconfmanager -t <Windchill>/codebase/WEB-INF/conf/wvs.properties -s “edrload.livecycle.
assembler.credentialalias=信頼できるエイリアス名”
◦ site.xconf ファイルを手動で編集する場合は、次の値を追加します。
<Property name="edrload.livecycle.assembler.credentialalias"
overridable="true" targetFile="codebase/WEB-INF/conf/wvs.properties"
value=信頼できるエイリアス名”/>
3. livecycleauth.properties という名前のファイルを作成し、Adobe Experience Manager サーバーの認証に使用するユーザー名とパスワードを追加します。WVS はデフォルトディレクトリ <Windchill> でこのプロパティファイルを検索しますが、管理者は WVS プロパティ edrload.livecycle.authfile で異なるディレクトリの場所を設定して、別の場所を指定できます。livecycleauth.properties ファイルの内容は次のとおりでなければなりません。
auth=<Adobe LiveCycle サーバーのユーザー名>:<Adobe LiveCycle サーバーのパスワード>
◦ xconfmanager コマンドを使用して livecycleauth.properties ファイルの場所を変更できます。これを行う場合は、値を次のように設定します。
xconfmanager -t <Windchill>/codebase/WEB-INF/conf/wvs.properties -s
“edrload.livecycle.authfile=場所の完全ディレクトリパス”
◦ site.xconf ファイルを手動で編集して livecycleauth.properties ファイルの場所を変更できます。これを行う場合は、次の値を追加します。
<Property name="edrload.livecycle.authfile" overridable="true"
targetFile="codebase/WEB-INF/conf/wvs.properties"
value="場所の完全ディレクトリパス"/>
Adobe Reader 拡張機能
Creo View および Adobe Reader でマークアップ機能を使用可能にするために Adobe Reader 拡張機能を有効にするには、次の手順に従います。
1. Windchill にサイト管理者または組織管理者としてログインします。
2. 「サイト」または
「組織」から > の順に選択して移動します。
アイコンをクリックして
「Visualization」セクションと
「Adobe Experience Manager サーバー」セクションを展開します。
「Reader Extensions 有効」プリファレンスを
「はい」に設定します。
3. 製品表現の作成時に Adobe Reader 拡張機能が PDF ファイルに適用されていることを確認するには、WTDocument に移動して製品表現のリストを表示します。新しい製品表現を作成し、ローカルディスクでまだ Adobe Reader のマークアップ機能を持たない PDF を選択します。「製品表現を作成」ウィザードにファイルをサブミットし、「WVS ジョブモニター」に移動してジョブの詳細を確認します。「ジョブの詳細」には次のようなメッセージが表示されているはずです。
2015 年 10 月 15 日、3:47:41 AM: Adobe Experience Manager サーバーを呼び出して "My_Document.pdf" を処理しました
パブリッシングジョブが完了すると、Creo View の製品表現リストから新しい製品表現が開きます。クライアントマシンに Adobe Reader がインストールされていると仮定して、Creo View は Adobe Reader で PDF ファイルを開きます。マークアップ機能を有効にして、マークアップが作成され、Windchill に保存されるようにします。
テンプレートに定義された DDX 命令の適用
DDX ファイルとは、Adobe Experience Manager サーバーが PDF ファイルで実行する命令セットを含む宣言型言語ファイルです。「Visualization コンフィギュレーション管理」を使用して、管理者は PDF ファイルに適用するウォーターマーク定義を含む DDX テンプレートをアップロードできます。この DDX テンプレートは、パブリッシング処理時にすべての PDF ファイルに適用されます。DDX テンプレートを設定するには、次の手順に従います。
1. Windchill にサイト管理者または組織管理者としてログインします。
2. 「サイト」または
「組織」から > の順に選択して移動します。
アイコンをクリックして
「Visualization」セクションと
「Adobe Experience Manager サーバー」セクションを展開します。
「DDX テンプレート有効」プリファレンスを
「はい」に設定します。
3. DDX テンプレートを定義するには、2 とおりの方法があります。
◦ サンプル DDX テンプレート LiveCycleServerTemplate.ddx (<Windchill>/codebase/com/ptc/wvs/server/xml 内) を、PDF ファイルに適用するウォーターマーク定義の開始点として使用します。以下は、ウォーターマーク定義で使用される Creo View プロパティの使用例です。ここでは、プロパティの値は実行中の DDX に適用されてから Adobe Experience Manager サーバーに送信され、処理されます。
◦ Creo View には、Creo View ウォーターマークファイル (.INI) から DDX ファイルを生成するコマンド ラインツールがあります。このコマンド wmini2ddx.exe は、Creo View クライアントのインストールディレクトリの下の bin ディレクトリにあります。次のコマンドを起動して、ユーティリティに関するヘルプ情報を表示します。
C:\Program Files\PTC\ProductView Client\bin\wmini2ddx.exe -help
| wmini2ddx.exe の詳細については、Creo View MCAD Adapter Installation and Configuration Guide を参照してください。 |
4. 次の手順を実行して、DDX テンプレートを WVS コンフィギュレーションテンプレートにアップロードします。
◦ Windchill にサイト管理者または組織管理者としてログインします。
◦ 「サイト」または
「組織」から > の順に選択して移動します。
「コンフィギュレーションを作成」アイコン
をクリックします。コンフィギュレーションタイプを入力するよう求めるメッセージが表示されます。この例では、コンフィギュレーション名として「
LiveCycle Server Template」と入力し、
「作成」をクリックします。
| このプロセスは製品、プロジェクト、組織、サイトなどの現在のコンテナコンテキストにこのコンフィギュレーションを追加します。たとえば、製品レベルに追加されたコンフィギュレーションは、組織レベルに追加されたコンフィギュレーションより優先的に使用され、組織レベルに追加されたコンフィギュレーションはサイトレベルに追加されたコンフィギュレーションより優先されます。 |
◦ コンフィギュレーションタイプ LiveCycle Server Template のリンクをクリックして、「ファイル」テーブルを表示します。
◦ 「ファイルをコンフィギュレーションに追加」アイコン
をクリックします。ブラウズして
LiveCycleServerTemplate.ddx ファイルを選択します。WVS インフラストラクチャに認識させるためには、DDX テンプレートファイルの名前を
LiveCycleServerTemplate.ddx とする必要があります。
◦ パブリッシング処理時に DDX で定義されたウォーターマーク定義が PDF ファイルに適用されていることを検証するには、WTDocument に移動して製品表現のリストを表示します。新しい製品表現を作成し、ローカルディスクでウォーターマークの付いていない PDF を選択します。「製品表現を作成」ウィザードにファイルをサブミットし、「WVS ジョブモニター」に移動してジョブの詳細を確認します。「ジョブの詳細」には次のようなメッセージが表示されているはずです。
2015 年 10 月 15 日、3:47:41 AM: Adobe Experience Manager サーバーを呼び出して "My_Document.pdf" を処理しました
パブリッシングジョブが完了すると、Creo View の製品表現リストから新しい製品表現が開きます。Creo View は、クライアントマシンに Adobe Reader がインストールされていると仮定してウォーターマーク付き PDF ファイルを開きます。
Adobe Reader 機能拡張と Creo View Adapter for Documents の連携
Creo View Adapter for Documents も、Adobe Reader 拡張機能を追加するために設定できます。ドキュメントアダプタで Adobe Reader 拡張機能を PDF ファイルに追加すると、ドキュメントアダプタは WVS インフラストラクチャと再度通信して Adobe Reader 拡張機能を適用しないようにします。これは、ドキュメントアダプタによりすでに適用されているからです。DDX テンプレートを使用したウォーターマークの適用が有効になっている場合、「Reader Extensions 有効」プリファレンスが「はい」に設定されているので、ウォーターマークの追加時に Adobe Reader 拡張機能が再適用されます。詳細については、Creo View MCAD Adapter Installation and Configuration Guide の「Creo View Adapter for PDF の設定」の章を参照してください。
Documents Adapter で Adobe Reader 拡張機能が有効になっており、Windchill サーバーには設定されていない (「Reader Extension 使用可能」(つまり Reader Extensions Enabled) プリファレンスが「いいえ」に設定されている) 場合、「ジョブの詳細」で「DDX テンプレート使用可能」プリファレンスが「はい」に設定されているときにローカル PDF ファイルで製品表現を作成すると、次の警告メッセージが表示されます。
警告: Reader 拡張機能は "<PDF ファイル名>.pdf" に適用済みです。DDX テンプレート使用時はシステム管理者に連絡して Reader 拡張機能プリファレンスを有効にしてください。
上記の例で、ユーザーが Creo View の製品表現を起動しようとした場合、次のメッセージが表示されます。
「このドキュメントでは Adobe Reader の拡張機能が有効になっています。ドキュメントは作成時から変更されており、拡張機能は使用できなくなっています。作成者に連絡してこのドキュメントの元のバージョンを入手してください。」
Adobe Experience Manager PDF 変換ユーティリティ
Adobe Experience Manager PDF 変換ユーティリティは、Windchill の製品表現に関連付けられた PDF ファイルに Reader 拡張機能を追加できる、一括変換ユーティリティです。このユーティリティを使用開始するには、Windchill Visualization Services を Adobe Experience Manager サーバーと連携できるよう設定する必要があります (上記「Adobe Experience Manager サーバーの設定」を参照してください)。開始する前に、ユーティリティのコマンドラインヘルプを呼び出して、使用可能なすべてのオプションをレビューします。ヘルプを表示するには、Windchill シェルで次のコマンドを実行します。
windchill com.ptc.wvs.server.util.livecycle.LiveCyclePDFConversionUtility -help
ユーティリティの実行には、"マーク" 操作と "マーク付きを処理" 操作の実行が含まれます。
マーク - 最初のステップは、マーク付けプロセスを実行することです。これにより、システムの特定の PDF ファイルにマーキングインジケータが保存されます。マーキングインジケータにより、PDF が Adobe Experience Manager サーバーで処理されたことが表示され、"プロセスマーク" 操作の実行時に Reader 拡張機能が適用されます。このステップで、Experience Manager サーバーによって処理されるシステムの PDF ファイルがマークされ、2 番目のステップ "プロセスマーク済み" の実行時に Reader 拡張機能が適用されます。Windchill システムの製品表現に関連付けられるすべての PDF をマークするには、Windchill シェルで次のコマンドを呼び出します。
windchill com.ptc.wvs.server.util.livecycle.LiveCyclePDFConversionUtility -mark
-username=<サイトのユーザー名> -password=<サイトのパスワード>
マーク操作は、特定のコンテナの PDF ファイルをマークしたり、修正時刻のタイムスタンプに基づいて PDF ファイルをマークしたりするその他のコマンドライン引数をサポートしています。たとえば、"Demo Organization" の製品表現に関連付けられているすべての PDF ファイルをマークするには、Windchill シェルで次のコマンドを呼び出します。
windchill com.ptc.wvs.server.util.livecycle.LiveCyclePDFConversionUtility -mark
-username=<サイトのユーザー名> -password=<サイトのパスワード>
-cont_path=”wt.inf.container.OrgContainer=Demo Organization”
"Demo Organization" の下の <my_product> 製品のすべての PDF ファイルをマークするには、Windchill シェルで次のコマンドを起動します。
windchill com.ptc.wvs.server.util.livecycle.LiveCyclePDFConversionUtility -mark
-username=<サイトのユーザー名> -password=<サイトのパスワード>
-cont_path=”wt.inf.container.OrgContainer=Demo Organization\
wt.pdmlink.PDMLinkProduct=MY_PRODUCT”
Windchill システムである範囲の修正時刻のタイムスタンプが付いたすべての PDF ファイルをマークするには、Windchill シェルで次のコマンドを起動します。
windchill com.ptc.wvs.server.util.livecycle.LiveCyclePDFConversionUtility -mark
-username=<サイトのユーザー名> -password=<サイトのパスワード>
-from=08/12/2012 -to=11/12/2012
マーク付きを処理 - 2 番目のステップは、ユーティリティでシステム内のすべてのマーク付き PDF ファイルを、設定済み Adobe Experience Manager サーバーに送信して処理することです。最終結果は、Reader 拡張機能が使用可能になった PDF ファイルであり、マーカー表示は変換済み PDF ファイルから除去されます。「マーク付きを処理」操作は、PDF ファイルを設定済み Adobe Experience Manager サーバーに送信する複数のスレッドをサポートします。Adobe Experience Manager サーバーは、同時に PDF ファイルに変換する複数のリクエストをサポートするように適切に設定されている必要があります。設定済み Adobe Experience Manager サーバーにすべてのマーク付き PDF ファイルを処理させるには、Windchill シェルで次のコマンドを起動します。
windchill com.ptc.wvs.server.util.livecycle.LiveCyclePDFConversionUtility
-process_marked-username=<サイトのユーザー名> -password=<サイトのパスワード>
マーク付き PDF ファイルの処理時には、メソッドサーバーログに変換の全体的な進捗状況を示すログメッセージが表示されます。変換に失敗した場合、Windchill システムの PDF ファイルの特定に必要なすべての情報が含まれたメッセージがメソッドサーバーログに表示されます。次に、PDF ファイルでページ修正ができずに失敗した変換のメソッドサーバーログの表示例を示します。
[Begin processing batch #1] - Size=10
Exception: ApplicationData=wt.content.ApplicationData:118012 (Cant_Modify_Set.pdf)
DerivedImage=wt.viewmarkup.DerivedImage:118010 (cant_modify)
Representable=wt.part.WTPart:118006 (0000000099, cant_modify, A.1)
Container=wt.pdmlink.PDMLinkProduct:84802 (ProductView Demo)
…
Caused by: javax.xml.ws.soap.SOAPFaultException: com.adobe.livecycle.assembler.client.ProcessingException: ALC-ASM-S00-002:
Failed to execute the DDX - error messages provided.
Caused by: com.adobe.internal.pdfm.content.FormXObjectServiceException: PDFM_S06016:
Apply Watermark operation failed due to permissions on document "inDoc".
Caused by: com.adobe.internal.pdfm.util.PDFMPermissionException: PDFM_S00014: PAGE_MODIFY permission is required for this operation.;
…
「マーク付きを処理」操作は、変換を実行する Windchill シェルで Ctrl + C キーを押すことで中止できます。Ctrl + C で中止すると、変換の中止までに約 30 秒かかります。変換が中止された後、ユーティリティで時間内に処理された PDF ファイルの数と一般的な統計値を表示します。この情報は、増大したファイルサイズや、多数の PDF ファイルの処理にかかった時間などを知るために利用できます。次に、変換中止の際に表示される内容の例を示します。
*****************************************
Interrupting conversion - please wait
*****************************************
The LiveCycle PDF Conversion Utility has been interrupted. Conversions currently
executing have been interrupted and awaiting conversions have been aborted.
LiveCycle PDF Conversion has completed.
Total execution time: 1.248 minutes(s)
Average time to perform a single conversion: 14.762 second(s)
Number of PDFs successfully converted: 14
Number of failed conversions: 5
Number of timed out conversions: 0
Total file size of all PDFs before conversion: 2659.06 KB
Total file size of all PDFs after conversion: 3358.94 KB
Total file size increase: 699.88 KB
Percentage of total file size increase: %20.84
Average filesize increase per PDF: 49.99 KB
There are 18 remaining marked PDF file(s).
カスタム Experience Manager 委任
Adobe Experience Manager Delegate Customization Hook では、DDX 命令と関連コンテンツのマップを動的に生成するためのカスタム実装を設定するクラス/メソッドを定義できます。これは設定済みの Adobe Experience Manager Assembler サービスに送信され、処理されます。この Adobe Experience Manager Assembler サービスの呼び出しは、ウォーターマークまたは Reader Rights を適用する前に実行されます。
Experience Manager Delegate フックの設定方法については、wvs.properties.xconf ファイル内の「Customization Hook: Experience Manager Delegate」エントリを参照してください。このフックの実装サンプルは、<Windchill> /prog_examples/wvs/com/ptc/wvs/LiveCycleDelegate.java にあります。プロパティ edrload.livecycle.delegate をクラス/メソッドに設定する必要があります。ここで、メソッドは次の署名と一致する必要があります。
package ext.customhooks;
class MyCustomClass {
public static LiveCycleInvocationParams getLiveCycleInvocationParams
(final Representable _representable, final File _pdf,
final Map _properties, final EDRLogger _logger) {
// Put custom code here. See example hook for Java Doc description of
inputs and outputs.
}
}
<Property name="edrload.livecycle.delegate" default="ext.customhooks.MyCustomClass/
getLiveCycleInvocationParams" />
設定済み Adobe Experience Manager サーバーを使用した PDF ファイルの更新
Windchill 10.1 M010 以降、PDF ファイルを設定済み Adobe Experience Manager サーバーで更新するために必要なすべてのパラメータを生成する新しいカスタム委任が WVS でサポートされています。カスタム委任は PDF に行う修正についての DDX 命令を生成し、サポートコンテンツ (PDF の送付状など) を提供します。既存の Reader Rights と DDX テンプレート (ウォーターマークの追加) の機能は、新しい委任と一緒に使用できます。PDF は最初に委任により定義された命令で処理されます。次に、有効な場合、ウォーターマークや Reader Rights の適用が行われます。
製品表現対象で、指定したプライマリ (またはセカンダリ) コンテンツについて PDF 表示を生成すると、WVS はオプションの委任を呼び出して入力を生成してから、その入力を使用して設定済み Adobe Experience Manager Assembler サービスを呼び出して PDF ファイルに特定の更新を行い、Windchill に保存します。
edrload.livecycle.delegate プロパティを使用して site.xconf に委任の例を設定します。このプロパティはクラス/メソッドを定義してカスタム実装を提供し、設定済み Adobe Experience Manager Assembler サービスが処理するよう送信される DDX 命令と関連するコンテンツのマップをダイナミックに生成します。この Adobe Experience Manager Assembler サービスの呼び出しは、ウォーターマークまたは Reader Rights を適用する前に実行されます。
委任の例は既成で提供されており、設定後に <Windchill>/codebase に展開されます。委任の例は次の場所にあります。
<Windchill>/prog_examples/wvs/com/ptc/wvs/LiveCycleDelegate.java
ドキュメント送付状の設定手順例
Adobe Experience Manager サーバーを WVS で設定して PDF ドキュメントの送付状を作成するには、次の手順に従います。
1. xconfmanager ユーティリティ (<Windchill>/bin ディレクトリ内) を使用して、wvs.properties.xconf ファイルを編集して次のプロパティを設定します。
◦ Adobe Experience Manager サーバー情報を設定:
<Property default=" http\://adobelc-host\:8080/soap/services/
AssemblerService " name="edrload.livecycle.assembler.serviceurl"/>
<Property default="$(edrload.livecycle.assembler.serviceurl)?WSDL&
lc_version=9.0.0" name="edrload.livecycle.assembler.wsdlurl"/>
<Property default="PRODUCTVIEW R&D" name="edrload.livecycle.
assembler.credentialalias"/>
<Property default="$(wt.home)$(wvs.dir.sep)livecycleauth.properties"
name="edrload.livecycle.authfile"/>
| 前述のステップ 3 の 4 つ目のプロパティを使用します。 |
ドキュメント送付状向けの Adobe Experience Manager Delegate およびそのメソッドを設定:
<Property name="edrload.livecycle.delegate"
default="com.ptc.coversheet.wvs.LiveCycleDelegate/getLiveCycleInvocationParams" />
◦ 変更時にドキュメントを再パブリッシングする
<Property default="true" name="publish.republishondocumentchange"/>
2. Windchill\codebase\WEB-INF\conf\wvs.properties.xconf に次のプロパティを追加:
<Property default="OFFICE" name="worker..DOC">
<Property default="OFFICE" name="worker..PDF">
<Property default="OFFICE" name="worker..PPT">
<Property default="OFFICE" name="worker..XLS">
<Property default="OFFICE" name="worker..DOCX">
<Property default="OFFICE" name="worker..PPTX">
<Property default="OFFICE" name="worker..XLSX">
3. livecycleauth.properties ファイル (ステップ 1 参照) を <Windchill> ディレクトリに作成して次の行を追加します。これは、Experience Manager サーバーに認証されるユーザー名とパスワードです。設定の詳細については、このトピックの「Adobe Experience Manager サーバーの設定」を参照してください。
4. OFFICE Worker を設定します。Worker の設定ガイドラインについては、Creo View MCAD Adapters Installation and Configuration Guide を参照してください。
5. xconf を次のようにインストールします。xconfManager -i <Windchill>\codebase\com\ptc\coversheet\template.properties.xconf
6. すべてのプロパティを適用します。xconfManager -p
次の図に、Experience Manager Delegate と Worker の間のやり取りの概念図を示します。