28
ADOBE ® INDESIGN ® CS6 ADOBE INDESIGN CS6 SERVER 開発入門

InDesign Server

  • Upload
    trandat

  • View
    215

  • Download
    2

Embed Size (px)

Citation preview

Page 1: InDesign Server

ADOBE® INDESIGN® CS6

ADOBE INDESIGN CS6SERVER 開発入門

Page 2: InDesign Server

2012 Adobe Systems Incorporated. All rights reserved.

Adobe® InDesign® CS6 Server 開発入門

If this guide is distributed with software that includes an end user agreement, this guide, as well as the software described in it, is furnished under license and may be used or copied only in accordance with the terms of such license. Except as permitted by any such license, no part of this guide may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written permission of Adobe Systems Incorporated. Please note that the content in this guide is protected under copyright law even if it is not distributed with software that includes an end user license agreement.

The content of this guide is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Adobe Systems Incorporated. Adobe Systems Incorporated assumes no responsibility or liability for any errors or inaccuracies that may appear in the informational content contained in this guide.

Please remember that existing artwork or images that you may want to include in your project may be protected under copyright law. The unauthorized incorporation of such material into your new work could be a violation of the rights of the copyright owner. Please be sure to obtain any permission required from the copyright owner.

Any references to company names in sample templates are for demonstration purposes only and are not intended to refer to any actual organization.

Adobe, the Adobe logo, InCopy, and InDesign are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries. Windows s either a registered trademark or a trademark of Microsoft Corporation in the United States and/or other countries. Mac OS is a trademark of Apple Computer, Incorporated, registered in the United States and other countries. All other trademarks are the property of their respective owners.

Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA. Notice to U.S. Government End Users. The Software and Documentation are “Commercial Items,” as that term is defined at 48 C.F.R. §2.101, consisting of “Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48 C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Unpublished-rights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference.

Page 3: InDesign Server

3

目次

1 Adobe InDesign Server 入門 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Adobe InDesign Server について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

最初にすること . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

用語 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

ロードマップ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6マニュアル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6スクリプティング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7COM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7Windows Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7Launchd デーモン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8パフォーマンスとスケーラビリティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 InDesign Server のインストールと実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

InDesign Server のインストール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9必要システム構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9インストーラーの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9CJK 機能セット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9ファイアウォール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10InDesign Server Windows Service のインストール(Windows のみ) . . . . . . . . . . . . . . . . . . . . . . . . . 10InDesign Server SDK のインストール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

InDesign Server の実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11InDesign Server のコマンドライン引数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11コマンドラインからの InDesign Server の起動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13SOAP 用 InDesign Server の起動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13CORBA 用 InDesign Server の起動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13別のプログラムまたはスクリプトからの起動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14複数の InDesign Server インスタンスの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14InDesign Server の終了 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15InDesign Server Windows Service の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Mac OS 用の InDesign Server launchd デーモンの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 InDesign Server との接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

SOAP を使用した InDesign Server との接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20InDesign Server スクリプトを実行する sampleclient の使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

プラグインを使用した InDesign Server との接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

COM を使用した InDesign Server との接続(Windowsのみ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24Visual Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24C# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

LBQ を使用した InDesign Server との接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

エラーメッセージの処理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26エラーとメッセージへのアクセス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26エラーとメッセージのリダイレクト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

よくある質問(FAQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27サーバーの起動時に SOAP ポートと IOR ファイルの両方を指定できますか。 . . . . . . . . . . . . . . 27

Page 4: InDesign Server

4

InDesign Server スクリプティング DOM のすべてのクラスとメソッドを一覧にしたものはありますか。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27InDesign Server を SOAP 用に起動しない場合でも、InDesign Server と対話できますか。 . . . 27スクリプトから SOAP クライアントに値を返すには、どのようにするのですか。 . . . . . . . . . 27

4 次のステップ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

InDesign Server のスクリプトおよびプラグイン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

SOAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Page 5: InDesign Server

5

1 Adobe InDesign Server 入門

このマニュアルでは、Adobe® InDesign® Server の概要について説明します。 InDesign Server を単純な環境にインストールして実行する方法を説明します。また、InDesign Server と外部コンポーネントとの通信方法についても説明します。

Adobe InDesign Server についてInDesign Server は、システムインテグレータやソリューションデベロッパーによって、サーバーベースのパブリッシングソリューションを構築するために使用されています。 InDesign Server は、ユーザーインターフェイスがない InDesign と見なすことができます。 InDesign Server は、InDesign のデスクトップ版と同じコードベースに基づいて構築されていますが、サーバーとしての用途に合うように作り替えられています。 この変更には、複数インスタンスのサポート、エラーの捕捉と記録、SOAP を使用する通信などがあります。

デスクトップ版の InDesign と同様に、InDesign Server にも豊富な開発環境が用意されています。 この開発環境では、XML などのオープンスタンダードがサポートされます。また、スクリプト処理能力や拡張性にも優れています。 InDesign Server は、InDesign Plug-in SDK や InDesign Server Scripting SDK で提供されている API を使用して拡張することができます。 これらの API は、C++ プラグイン、JavaScript スクリプト、AppleScript スクリプト、VBScript スクリプトの作成で使用できます。

最初にすること最初にするべきことについては、InDesign Server SDK のインストールディレクトリに含まれている『Getting Started with the Adobe InDesign Server SDK』を参照してください。また、このマニュアルでは、SDK に付属しているサンプルの使用方法についても説明しています。

用語ここでは、このマニュアル全体で使用される用語の定義を示します。

Ant — Another Neat Tool の略で、Java ベースのビルドツール。

クライアント — 分散コンピューティングシステムにおいて、サーバーのサービスを要求する側。

COM — Component Object Model の略で、アプリケーションとコンポーネントの間の相互運用性を高める技術。

IDS — InDesign Server の略。

<IDS> — InDesign Server のインストール先のディレクトリ。

<IDS SDK> — InDesign Server SDK のインストール先のディレクトリ。

InDesign Server SDK — SOAP など、InDesign Server を操作するための様々な技術が含まれています。 この SDK には、InDesign Server のすべてのマニュアルが含まれています。

InDesign スクリプティング DOM — スクリプティングドキュメントオブジェクトモデル。 スクリプティングによってアクセスする InDesign 内のオブジェクトとそれらの階層です。

InDesign Scripting SDK — スクリプティング DOM にアクセスするための API。

Page 6: InDesign Server

第 1 章 Adobe InDesign Server 入門 ロードマップ 6

IOR ファイル — Interoperable Object Reference ファイルの略。 CORBA とそのクライアントで、CORBA オブジェクトモデルのオブジェクトの識別に使用されます。

IPv6 — Internet Protocol Version 6 の略で、IPv4 の後継プロトコル。 IPv6 は、InDesign CS4 Server 以上でサポートされます。

ジョブキューイング — サブミットされたジョブをキューに格納し、非同期的に実行して、ジョブのステータスを後から確認できるようにするメカニズム。

負荷分散 — 使用可能状況に基づき、複数のインスタンスおよびサービス間でジョブを分散すること。

<locale> — パス内で InDesign Server の言語バージョンを表す部分。例えば、english などです。

LBQ — Load Balancing and Queuing の略で、複数の IDS インスタンスでジョブキューイングと負荷分散を実現するアドオンコンポーネント。

サーバー — 分散コンピューティングシステムにおいて、サービスを提供する側。

シェルウィンドウ — コマンドラインウィンドウ。 Windows® では、「コマンド プロンプト」を使用します(スタートメニューのアクセサリフォルダーにあります)。 Mac OS® では、「ターミナル」ユーティリティを使用します(/アプリケーション/ユーティリティにあります)。

<Scripting SDK> — InDesign Scripting SDK のインストール先のディレクトリ。

<SDK> — InDesign Plug-in SDK のインストール先のディレクトリ。

SOAP — Simple Object Access Protocol の略で、プログラムとプラットフォームの間でメッセージを交換するための、XML ベースのプロトコル。 InDesign Server では、SOAP 業界標準バージョン 1.1、1.2(RPC および doc/lit)、WSDL 1.1 の各バージョンがサポートされます。

<version> — パス内で InDesign Server のバージョン番号を表す部分。例えば、CS6 の場合は 8.0 です。

WSDL — Web Service Description Language の略で、Web サービスへのアクセス方法と実行する操作内容を記述するための、XML ベースのフォーマット。

ロードマップこの節では、InDesign Server を使用したり拡張したりする様々な方法の概要を説明します。また、詳しい情報の見つけ方についても紹介します。 このマニュアルの残りの部分ではさらに追加情報を提供します。

マニュアルInDesign Plug-in SDK と InDesign Scripting SDK の双方に、InDesign Server の拡張方法を示すマニュアルとサンプルコードが含まれています。 どちらの SDK も Adobe.com からダウンロード可能です。このマニュアル内に掲載されているマニュアルは、SDK に含まれています。

スクリプティングInDesign と同様に、InDesign Server では JavaScript、AppleScript、VBScript をスクリプティングに使用できます。

スクリプトの作成

InDesign Server スクリプトの記述方法については、次のマニュアルを参照してください。

Page 7: InDesign Server

第 1 章 Adobe InDesign Server 入門 ロードマップ 7

『Adobe InDesign スクリプティングチュートリアル』

『Adobe InDesign スクリプティングガイド』

『Adobe InDesign Server Scripting Guide』

また、Adobe ExtendScript Toolkit のヘルプメニュー内から InDesign オブジェクトモデルビューアにアクセスできます。

スクリプトの実行

InDesign Server では、RunScript という 1 つの SOAP メソッドが提供されています。このメソッドを使用して、スクリプトを InDesign Server に送信します。 InDesign Server をインストールすると、単純な SOAP クライアントである SampleClient もインストールされます。この SampleClient を使用してスクリプトを実行できます。 20ページの「InDesign Server スクリプトを実行する sampleclient の使用」を参照してください。

SampleClient は、C++ で作成されており、ソースコードは InDesign Products SDK で提供されています。 InDesign Server SDK には、C#、PHP、VB.NET、Flex などで作成されたサンプルクライアントプロジェクトも含まれています。

C++

C++ プラグインの作成

InDesign Server は C++ で作成されており、InDesign C++ API を使用して開発された C++ プラグインをサポートしています。 詳しくは、23ページの「プラグインを使用した InDesign Server との接続」、『Adobe InDesign Plug-In Programming Guide』、および『Getting Started with Adobe InDesign Plug-In Development』の「InDesign Server Plug-in Techniques」を参照してください。

スクリプトを使用したプラグインへのアクセス

スクリプトからプラグインにアクセスするには、プラグインをスクリプト可能にする必要があります。 詳しくは、『Adobe InDesign Plug-In Programming Guide』の「Scriptable Plug-in Fundamentals」の章を参照してください。

COM

InDesign Server では、COM タイプライブラリが公開されています。COM タイプライブラリを使用して、InDesign Server と相互運用する COM コンポーネントを作成することができます。 COM コンポーネントは、いくつかの言語で作成できます。 このマニュアルでは、24ページの「COM を使用した InDesign Server との接続(Windowsのみ)」で、Visual Basic と C# を使用して簡単に説明します。

Windows Service

Windows Service を使用して InDesign Server を管理できます。 サービスを使用するには、10ページの「InDesign Server Windows Service のインストール(Windows のみ)」の説明にあるように、まず

InDesignServerService をインストールします。 以降は、InDesign Server Microsoft Management Console スナップインを使用して InDesignServerService を設定できます。

Page 8: InDesign Server

第 1 章 Adobe InDesign Server 入門 ロードマップ 8

Launchd デーモンMac OS では、launchd デーモンを使用して InDesign Server を管理することができます。 デーモンの設定方法については、17ページの「Mac OS 用の InDesign Server launchd デーモンの設定」を参照してください。

パフォーマンスとスケーラビリティInDesign Server のパフォーマンスとスケーラビリティに関するマニュアルおよびツールが、InDesign Server SDK に用意されています。 『Getting Started with the Adobe InDesign Server SDK』を参照してください。

Page 9: InDesign Server

9

2 InDesign Server のインストールと実行

この章では、Adobe InDesign Server のインストール、実行および設定の方法について説明します。

InDesign Server のインストールInDesign Server をインストールする前に、ご使用のシステムが、関連する必要システム構成に適合していることを確認してください。 次に、ESD(Electronic Software Download)で提供されるインストーラーを実行します。 インストール後は、11ページの「InDesign Server の実行」の説明にあるように、コマンドラインから InDesign Server を実行できます。 初回起動時にコマンドラインで -serialnumber 引数を使用すると、InDesign Server のシリアライズが発生します。

必要システム構成InDesign Server の実行については、アプリケーションの ReadMe ファイルに記載されている必要システム構成の詳細を確認してください。

InDesign Server Windows Service を実行する場合は、Microsoft .NET Framework Version 2.0 以上が必要です。

インストーラーの実行InDesign Server ESD(Electronic Software Download)をダウンロードして展開したら、インストーラーアイコンをダブルクリックしてインストーラーを実行できます。 画面に表示される指示に従ってください。 インストール中に、InDesign Server のインストール先を指定できます。デフォルトの場所を使用することも可能です。

Windows では、 InDesign Server CS6 は 64 ビットのみです。

Mac OS では、 InDesign Server CS6 は 32 ビットのみです。

CJK 機能セットInDesign Server では、有効化されている Roman(英語)または日本語(CJK)の機能セットに基づいてコンポジションが実行されます。 Windows では、レジストリ設定を使用して有効な機能セットを指定します。 Mac OS では、Roman 機能セットが有効なアプリケーションと、CJK 機能セットが有効なアプリケーションの、2 つのアプリケーションがあります。

英語版の Windows に InDesign Server をインストールする場合は、デフォルトで Roman 機能セットになります。 中国語版の Windows(一例として)にインストールする場合は、デフォルトで CJK 機能セットになります。 英語版の Windows へのインストール中に、インストール言語を中国語に変更すると、デフォルトで CJK 機能セットになります。

regedit を実行して次のキーを変更することにより、デフォルトの機能セットを変更できます(バージョン番号は適切なものに変更してください)。

64 ビット Windows で 64 ビットアプリケーションの場合:

HKEY_LOCAL_MACHINE¥SOFTWARE¥Adobe¥InDesign Server¥<version>

Feature Set Locale Setting キーを、Roman の場合は 400 に、CJK の場合は 401 に変更します。 設定は、InDesign Server が起動する際に有効になります。

Page 10: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server のインストール 10

ファイアウォールInDesign Server を実行するコンピューター(サーバー)とそのサーバーのクライアントの間に存在するファイアウォールは、すべて適切に設定する必要があります。適切に設定されていないと、クライアントはサーバーとの接続を確立できません。 詳しくは、ご使用のファイアウォールのマニュアルを確認するか、ネットワークシステム管理者に相談してください。

InDesign Server Windows Service のインストール(Windows のみ)InDesign Server Windows Service は、指定した InDesign Server のインスタンスを監視します。インスタンスが終了したり、コンピューターがリブートされると、InDesign Server Windows Service はインスタンスを再起動します。 InDesign Server Windows Service により、InDesign Server のメッセージは Windows のイベントログにリダイレクトされ、ローカルまたはリモートからの確認が可能になります。また、コンピューターの現在のユーザーのものとは異なるユーザー名とパスワードを使用して InDesign Server のインスタンスを設定することができるようになります。

InDesign Server Windows Service は、InDesign Server インストーラーを使用して、またはコマンドラインからインストールできます。 インストーラーを使用する場合は、InDesign Server インストーラーを実行して、InDesign Server 用のサービスファイルをインストールするオプションを選択するだけです。 コマンドラインからインストールする場合は、カレントディレクトリを InDesign Server のインストール先フォルダーに設定し、次のコマンドを実行します。

InDesignServerService /install

コマンドラインを使用して InDesign Server Windows Service をアンインストールするには、カレントディレクトリを InDesign Server フォルダーに設定し、次のコマンドを実行します。

InDesignServerService /install /u

InDesign Server Windows Service の 2 番目のコンポーネントは、InDesign Server Service Management Console スナップインです。InDesign Server インストーラーを使用してサービスをインストールした場合は、その際にスナップインもインストールされています。 サービスのインストールにコマンドラインを使用した場合は、次の手順に従って、スナップインもインストールする必要があります。

64 ビットコンピューターにスナップインをインストールするには、次のコマンドを実行します。

regsvr64 InDesignServerMMC64.dll

InDesignServerMMC スナップインのアンインストール方法はインストール方法と同様ですが、次のコマンドライン引数を追加します。

regsvr64 InDesignServerMMC.dll /u

スナップインの設定について詳しくは、16ページの「InDesign Server Windows Service の設定」を参照してください。

InDesign Server SDK のインストールInDesign Server SDK には、InDesign Server 用のサンプル、スクリプト、マニュアルが含まれています。 InDesign Server SDK は、Adobe.com からダウンロードできます。必要に応じて、SDK の設定後に SDK フォルダーを移動できます。

Page 11: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 11

InDesign Server の実行InDesign Server は、コマンドラインや別のプログラムまたはスクリプトから起動することができます。 それぞれの起動方法でコマンドライン引数が使用でき、InDesign Server の実行方法および設定内容を制御できます。

InDesign Server のコマンドライン引数InDesign Server のコマンドライン引数を使用すると、InDesign Server の様々な部分を設定することができます。 コマンドラインには次の構文があります。引数については、その次の表で説明します。

InDesignServer [arguments]

引数 説明

-configuration name オプション。 この InDesign Server のインスタンスの設定名を指定します。name は InDesign Server によってプライベートデータ、キャッシュ、設定ファイルを格納する設定フォルダーが作成される際に使用されるので、現在のシステムで有効なフォルダー名にする必要があります。 デフォルトでは、フォルダー名は「configuration_noport」または「configuration_n」です。「n」は、ポート番号です(-port 引数が指定されている場合)。 設定フォルダーは次の場所に作成されます。

Windows の場合:

C:¥Documents and Settings¥<username>¥Application Data¥ Adobe¥InDesign Server¥<version>¥<locale>¥

Windows Vista および Windows Server 2008 の場合:

C:¥Users¥<username>¥AppData¥Roaming¥Adobe¥InDesign Server¥<version>¥<locale>¥

Windows で Windows サービスを使用する場合:

C:¥Documents and Settings¥All Users¥Application Data¥ Adobe¥InDesign Server¥<version>¥<locale>¥

Windows Vista および Windows Server 2008 で Windows サービスを使用する場合:

C:¥ProgramData¥Adobe¥InDesign Server¥<version>¥<locale>¥

Mac OS の場合:

/Users/<username>/Library/Preferences/Adobe InDesign Server/<version>/<locale>/

-[no]console オプション。 Windows のみ。 新しいコンソールウィンドウ(コマンドシェル)を作成し、stderr と stdout をそこへリダイレクトします。 -noconsole が指定されている場合、stdout と stderr は InDesign Server を起動したターミナル(ウィンドウ)へパイプされます。 この引数は、Microsoft Visual Studio デバッガーを使用して、開発中の InDesign Server プラグインをデバッグする際に役立ちます。デバッガーは、通常、stderr および stdout に出力されたデータを破棄してしまうからです。 また、アプリケーションサーバーなどの、別のアプリケーション内から InDesign Server を起動する際にも役立つことがあります。 この引数は、InDesignServer.exe でのみ使用でき、InDesignServer.com では使用できません。デフォルトは -noconsole です。

Page 12: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 12

-[no]errorlist オプション。 InDesign Server で SOAP 呼び出しによるスクリプトエラーをメモリに保存するかどうかを制御します。 エラーリストは自動でクリアされません。エラーの蓄積が許容数を超えると、新しいエラーが失われます。 デフォルトは -noerrorlist です。

-help オプション。 すべての引数の簡単な説明を表示します。

-iorfile filepath CORBA 用の場合は必須であり、InDesign の Load Balancing and Queuing アドインで使用されます。それ以外の場合はオプションです。 アプリケーションオブジェクトの IOR を含むファイルの書き込み場所を InDesign Server に伝えます。 このファイルの IOR は、クライアントが InDesign Server アプリケーションオブジェクトへの参照を作成するために使用します。 クライアントコードが InDesign Server のアプリケーションオブジェクトにアクセスするために使用する Cookie のようなものと考えることができます。 それぞれのサーバーインスタンスで一意の IOR ファイルが必要です。 複数のクライアントが、特定のサーバーにそのサーバーの IOR ファイルを使用してアクセスします。 InDesign Server によって「[server] Writing IOR to ...」という通知が出力されると、IOR が指定したファイルに書き込まれたことがわかります。

-LogToApplicationEventLog オプション。 Windows の場合、この引数を使用すると、InDesign Server のコンソール出力が Windows のアプリケーションイベントログに転送されます。 出力は、コントロールパネルの「コンピュータの管理」にある標準のイベントビューアの「アプリケーション」で確認できます。 Macintosh の場合、InDesign Server を launchd デーモンとして使用するときは、この引数を使用する必要があります。 出力を確認するには、Mac OS の標準のコンソールアプリケーションを使用します。

-maxerrors number オプション。 number は、InDesign Server によってメモリに保存する必要がある SOAP 呼び出しによるスクリプトエラーの最大数を指定します。 デフォルトは 10,000 です。

-pluginpath path[,path] CORBA 用の場合は必須であり、InDesign の Load Balancing and Queuing アドインで使用されます。それ以外の場合はオプションです。 指定したフォルダーとそのサブフォルダーにあるすべてのプラグインをロードするようサーバーに指示します。 インストールした server/corba サブディレクトリを指定すると、InDesign Server CORBA サポートプラグインがロードされて有効になります。path は、InDesign Server のインストールフォルダーを基準とする相対パスです(例えば、「Server/Corba」と入力すると、フォルダー「C:¥Program Files¥Adobe¥ Adobe InDesign CS6.0 Server¥Server¥Corba」が指定されます)。 絶対パスは使用しないでください。 InDesign Server によって「[server] ApplicationIOR: ...」という通知が出力されると、CORBA サポートプラグインがロードされたことがわかります。

-port number SOAP 用の場合は必須。そうでない場合はオプション。 これは、InDesign Server がクライアントアプリケーションからの SOAP リクエストをサービスするために使用するソケットのポート番号です。 指定しなかった場合は、どのポートも使用されないため、SOAP リクエストは処理されません。 SOAP を有効にしている場合は、同一のシステム上で実行中の InDesign Server の各インスタンスに一意のポートが必要です。 ポート番号は正の整数値である必要があります。

-[no]previews オプション。 画像のインポート時にプレビューを生成するかどうかを指定します。 デフォルトは -nopreviews です。

-[no]seh オプション。 Windows のみ。 構造化例外処理を使用する必要があるかどうかを指定します。 デフォルトは -seh です。

引数 説明

Page 13: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 13

コマンドラインからの InDesign Server の起動1. InDesign Server をインストールしたシステムで、新しいシェルウィンドウを開きます。 Windows では、コマンドプロンプトを使用します。Mac OS では、ターミナルを使用します。

2. カレントディレクトリを、InDesign Server のインストール先フォルダーに変更します。 Windows では、フォルダーに InDesignServer.com アプリケーションが含まれています。 Mac OS では、フォルダーに InDesignServer.app アプリケーションパッケージが含まれています。 次に例を示します。

64 ビット Windows:

cd "C:¥Program Files¥Adobe¥Adobe InDesign CS6 Server x64¥"

Mac OS:

cd '/Applications/Adobe InDesign CS6 Server/'

3. 次のコマンドを実行します (Windows では、デフォルトで InDesignServer.com が実行されます。 これによりパスが設定され、InDesignServer.exe が実行されます)。

InDesignServer

4. シェルウィンドウに InDesign Server のスタートアップメッセージが表示されます。 InDesign Server が使用可能な状態になると、「[server] Server Running」というメッセージが表示されます。 InDesign Server の実行中は、シェルウィンドウにメッセージとエラーが表示されます。つまり、このウィンドウを使用して、InDesign Server を監視できます。

SOAP 用 InDesign Server の起動InDesign Server との対話にスクリプトを使用するワークフローでは、ほとんどの場合、SOAP を介して InDesign Server へスクリプトを送信します。 SOAP を介して InDesign Server と通信するには、InDesign Server の起動時に -port 引数を使用する必要があります。 次のサンプルコマンドラインのポート番号「12345」は、任意のポートに置き換えて使用できます。

InDesignServer -port 12345

InDesign Server によって次のようなスタートアップメッセージが表示されます。

"[soap] Servicing SOAP requests on port 12345."

このメッセージは、InDesign Server が SOAP リクエストを受け入れる準備ができたことを示します。

CORBA 用 InDesign Server の起動ワークフローで InDesign Server との対話に Load Balancing and Queuing(LBQ)を使用する場合は、CORBA 用の InDesign Server を起動する必要があります。 InDesign Server LBQ アドインは、InDesign Server との通信を CORBA サポートプラグインに依存しています。 この通信は、CORBA でオブジェクトを一意に識別する IOR を表す文字列を含むテキストファイルを使用することで容易になります。

-[no]sendcrashlogs Mac OS のみ。 自動的にクラッシュログを Adobe へ送信します。 デフォルトは -nosendcrashlogs です。

-serialnumber number アプリケーションのシリアル番号を入力します。 この引数は、アプリケーションをロック解除するために 1 回だけ使用する必要があります。

引数 説明

Page 14: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 14

InDesign Server インスタンスが初期化されると、アプリケーションオブジェクトを表す IOR が、指定したテキストファイルに書き込まれます。 LBQ クライアントは、この IOR ファイルに含まれる IOR を使用して、InDesign Server アプリケーションオブジェクトのプロキシオブジェクトをインスタンス化できます。

CORBA 用の InDesign Server を起動するには、コマンドラインに -iorfile 引数および -pluginpath 引数を追加します。 -pluginpath で指定するパスは、InDesign Server アプリケーションのパスに対する相対パスです。 起動時に、InDesign Server によって、指定したテキストファイルが作成され、アプリケーションの IOR がそのファイルに書き込まれます。 ユーザーは、ファイルパスに対する書き込み権限を所有している必要があります。 次のサンプルコマンドラインで、「c:¥ior.txt(Windows)」または「~/ior.txt(Mac OS)」を希望するファイルパスに置き換えてください。

Windows:

InDesignServer -iorfile c:¥ior.txt -pluginpath Server¥Corba

Mac OS:

InDesignServer -iorfile ~/ior.txt -pluginpath Server/Corba

InDesign Server によって次のようなスタートアップメッセージが表示されます。

"[server] ApplicationIOR:...""[server] Writing IOR to ..."

これらのメッセージは、InDesign Server が CORBA コマンドを受け入れる準備ができ、指定したファイルから InDesign Server アプリケーション IOR にアクセスできることを示しています。

別のプログラムまたはスクリプトからの起動InDesign Server は、別のプログラムまたはスクリプトのプロセスとして起動することができます。 Windows では、InDesign Server は通常、InDesignServer.exe ではなく InDesignServer.com を使用して実行されることに注意してください。.com バージョンは、InDesign Server CORBA の実装で必要になる omniorb フォルダーに対して必要なパスが設定される点が、.exe バージョンと異なります。 .exe では、これらのパスは設定されません。つまり、InDesignServer.exe を起動する前に、omniorb フォルダーを PATH 環境変数に追加する必要がある可能性があります。

複数の InDesign Server インスタンスの実行サイトでの InDesign Server 要求が大量の場合は、同じシステム上で InDesign Server の複数インスタンスを実行することにより、スループットを増加させることができます。 1 台のコンピューター上で実行する InDesign Server インスタンスの最大数の一般的な目安は、そのコンピューターのコア数 +1 です。 詳しくは、『Adobe InDesign Server Solutions』の「InDesign Server Scalability and Performance」を参照してください。

複数のインスタンスを実行するには、それぞれのインスタンスに一意の設定名を指定する必要があります。 -configuration 引数を使用して、各インスタンスに一意の名前を指定します。 コマンドラインから InDesign Server を実行する場合は、各インスタンスをそれぞれ固有のウィンドウで実行する必要があります。

1. シェルウィンドウから、次の行を実行して最初のインスタンスを起動します。

InDesignServer -configuration myIDS1

2. 新しいシェルウィンドウを開き、次の行を実行して 2 番目のインスタンスを起動します。

InDesignServer -configuration myIDS2

Page 15: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 15

複数インスタンスでの SOAP の使用

SOAP を使用して InDesign Server と通信するアプリケーションが複数ある場合は、InDesign Server の各インスタンスに異なるポート番号を割り当てる必要があります。 次の例では、-configuration 引数を指定する必要はありません。InDesign Server によって、指定したポートに基づいた設定名が作成されるためです(11ページの「InDesign Server のコマンドライン引数」に説明してあるとおりです)。 次の例では、設定名「configuration_18383」と「configuration_18555」が作成されます。

次のコマンドラインの実行により、最初のインスタンスが実行されます。

InDesignServer -port 18383

次のコマンドラインの実行により、2 番目のインスタンスが実行されます。

InDesignServer -port 18555

オプションで、各インスタンスに一意の設定名を指定することができます。ただし、SOAP の使用には一意のポート番号が必要です。 次に例を示します。

InDesignServer -configuration myIDS3 -port 18777

複数インスタンスでの CORBA の使用

InDesign Server の Load Balancing and Queuing アドインを使用する場合は、InDesign Server の各インスタンスに異なる IOR テキストファイルと設定名を割り当てる必要があります。 次の例では、各インスタンスに対して一意の IOR テキストファイルと設定名が作成されます。

Windows では、次のコマンドラインの実行により、最初のインスタンスが実行されます。

InDesignServer -configuration myIDS1 -iorfile c:¥IDS¥ior_1.txt-pluginpath Server/Corba

次のコマンドラインの実行により、2 番目のインスタンスが実行されます。

InDesignServer -configuration myIDS2 -iorfile c:¥IDS¥ior_2.txt-pluginpath Server/Corba

Mac OS では、次のコマンドラインの実行により、最初のインスタンスが実行されます。

InDesignServer -configuration myIDS1 -iorfile /IDS/ior_1.txt-pluginpath Server/Corba

次のコマンドラインの実行により、2 番目のインスタンスが実行されます。

InDesignServer -configuration myIDS2 -iorfile /IDS/ior_2.txt-pluginpath Server/Corba

InDesign Server の終了InDesign Server は、次の方法で終了できます。

InDesign Server を起動したコマンドプロンプトウィンドウ(Mac OS ではターミナル)で Control+C キーを押します。

アプリケーションの終了イベントを使用してシャットダウンするように指示するスクリプトを、InDesign Server に送信します。 例えば、次の JavaScript では、開いているドキュメントを保存せずに InDesign Server を終了します。

app.quit(SaveOptions.no);

Page 16: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 16

InDesign Server インスタンスを InDesign Server Windows Service から起動した場合は、サービスを停止して、このサービスによって起動された InDesign Server のインスタンスをすべて終了することができます。

InDesign Server Windows Service の設定InDesign Server Windows Service は、標準の Microsoft 管理コンソールの「サービス」カテゴリを使用して開始、停止、設定できます。 管理コンソールは、「マイ コンピュータ」を右クリックして「管理」を選択するか、スタートメニューからスタート/管理ツール/コンピュータの管理を選択して起動できます。 コンピューターの管理ウィンドウで、「サービスとアプリケーション」を選択し、次に「サービス」を選択します。 サービスのリストで、InDesignServerService または InDesignServerService x64 をダブルクリックします。 プロパティダイアログボックスが表示されます。このダイアログボックスで、サービスの開始、停止、一時停止やログインの変更、またはサービスの開始方法の変更が可能です。

「ログオン」タブでは、最低限の権限設定(必要な処理のみをサービスに許可する)を使用することが、Microsoft 社によって推奨されています。この場合、Documents and Settings フォルダーに対する読み込みと書き込み、サーバーが処理中のドキュメントの場所に対する読み込みと書き込み、ポートのオープン、レジストリ設定の読み込みが相当します。 「ローカル システム アカウント」には、LocalService よりも強い権限があります。そのため、まず最初は「アカウント」を LocalService(例えば、NT AUTHORITY¥LocalService)に設定する必要があります。

「回復」タブでは、設定を「何もしない」のままにしておくことをお勧めします。 この設定は、サービスがクラッシュした場合の再起動のオプションです。 サービスがジョブを処理中の場合、InDesignServer のインスタンスは、指定したポート/設定でサービスにより既に起動されています。 その後、サービスがクラッシュし、InDesign Server インスタンスが依然として実行中であると、サービスの新しいインスタンスには実行中のインスタンスが認識できず、InDesign Server の新しいインスタンスの起動を試みますが、起動に失敗します。これは、ポート/設定が既に使用されているためです。 これらの設定は、クラッシュ時にサービスが InDesign Server インスタンスをどのように処理するかに対しては影響を与えません。この処理方法は、レジストリ設定 HKEY_LOCAL_MACHINE¥SYSTEM¥CurrentControlSet¥Services¥InDesignCS55ServerWinService の MaximumFailureCount、MaximumFailureIntervalInMinutes および TrackFailures で設定されます。 サービスに新しいインスタンスが追加されるたびに、各インスタンスに対して 3 つすべてのレジストリ設定のエントリが作成されます。 インストーラーによって自動的にインスタンスが追加されることはありません。 サービスにインスタンスを追加すると、これらのレジストリのエントリを確認できるようになります。

InDesign Server Console Management スナップイン

Windows Service の 2 番目のコンポーネントは、InDesign Server Console Management スナップインです。スナップインを管理コンソールに追加するには、InDesign Server インストールにある InDesignServerService.msc ファイルをダブルクリックします。 また、Windows アプリケーションの mmc.exe を実行して、ファイル/スナップインの追加と削除 ... を選択することにより、スナップインを管理コンソールに手動で追加することもできます。 この方法では、すべての利用可能な MMC スナップインのリストが表示されます。 リストが表示されない場合は、「追加」をクリックします。リストから「InDesignServerService」を選択し、現在のコンソールに追加します。 スナップインの追加と削除ダイアログボックスを閉じます。

InDesign Server インスタンスをコンソールに追加するには、コンソールの左側ペインで InDesignServerService を右クリックし、新規作成/新規 InDesign Server インスタンスを選択します。 新しいインスタンスには、前のインスタンスの障害パラメーターが継承されます。 また、既存の InDesignServerService インスタンスの中で最も大きいポート番号に、1 を加えたポート番号が割り当てられます。 デフォルトのコマンドラインは空です。 インスタンスの設定(ポート番号やコマンドライン)を変更するには、右側ペインでインスタンスをダブルクリックします。 コマンドラインの書式は、13ページの「コマンドラインからの InDesign Server の起動」の説明にあるように設定する必要がありますが、-port 引数はポートエントリによって定義されるので、使用しないでください。

1 台のコンピューター上に存在する InDesign Server の複数インスタンスでは、各インスタンスに一意のポートまたは一意の設定名が必要です。ポートと設定名は、サービスのポートおよびコマンドラインの設定を編集して指定できます。 通常、設定する必要があるのはサービスのポートとコマンドラインの設定のみですが、

Page 17: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 17

その他にサービスインスタンスのレジストリ設定を編集することで変更できる設定がいくつかあります。変更できる設定は次のとおりです。

MaximumFailureCount — サービスによる、障害インスタンスの再起動試行回数。

MaximumFailureIntervalInMinutes — MaximumFailureCount の時間枠。 InDesign Server が MaximumFailureIntervalInMinutes の時間内に MaximumFailureCount の回数を超えて失敗すると、サービスは再起動の試行を停止します。

TrackFailures — これはブーリアンです。 1(デフォルト)の場合、サービスによって InDesign Server の再起動が試行されます。0 の場合は、サービスは再起動を試行しません。

設定を編集するには、regedit を実行し、HKEY_LOCAL_MACHINE¥SYSTEM¥CurrentControlSet¥Services¥InDesignCS55ServerWinService 内のキーを調べます。 InDesignServerService.msc または Console Management スナップインを使用して設定した各インスタンスに対し、キー一式(例えば、065c361a-0cbe-4917-bf15-5276b1815769)が存在しているはずです。

Mac OS 用の InDesign Server launchd デーモンの設定InDesign Server は、Mac OS 上でエンドユーザーによる直接制御を必要としないバックグラウンドタスク(デーモン)として起動することができます。 InDesign Server をデーモンとして実行する場合は、オペレーティングシステムの起動時に InDesign Server が起動するように設定することができます。また、アプリケーションがクラッシュした場合の再起動オプションを設定することも可能になります。

デーモンを設定するには、希望する設定を含むプロパティリスト(plist)設定ファイルを作成し、そのファイルを目的の LaunchAgents または LaunchDaemons フォルダーにインストールします。

launchd 設定ファイル

launchd 設定ファイルを作成するには、使い慣れたプレーンテキストエディターを使用して、次に指定するように XML コンテンツを入力します。 デーモンのラベルをファイル名として使用し、拡張子を .plist にしてファイルを保存します(例えば、com.adobe.ids.launchd.12345.plist)。 Developer/Applications/Utilities 内にある XCode ユーティリティアプリケーションやプロパティリストエディターを使用して、plist ファイルを編集することもできます。

次の表に、InDesign Server launchd デーモンに必要な設定を示します。 launchd オプションの完全なリストについては、launchd の man ページを参照してください。

オプション 説明

Label デーモンに対する一意の識別子。com.adobe.ids.launchd.12345 などです。

OnDemand InDesign Server を終了またはクラッシュ後に再起動するには、false に設定する必要があります。

Page 18: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 18

次に、plist 設定ファイルの XML コンテンツの例を示します。ここでは、SOAP ポート 12345 を使用して、InDesign Server を実行します。

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"<plist version="1.0"><dict>

<key>Label</key><string>com.adobe.ids.launchd.12345</string><key>OnDemand</key><false/><key>ProgramArguments</key><array>

<string>/Applications/Adobe InDesign CS5.5 Server/InDesignServer</string><string>-port</string><string>12345</string><string>-LogToApplicationEventLog</string>

</array><key>RunAtLoad</key><true/>

</dict></plist>

設定ファイルのインストール

launchd 設定ファイルのインストールは、InDesign Server を実行するコンピューター上の正しいフォルダーにファイルをコピーするだけです。 実行する InDesign Server の各インスタンスに対して 1 つずつ、複数のデーモン設定ファイルをインストールできます。 標準の InDesign Server インストールでは、ユーザーアカウントなしで Mac OS X Server を実行します。 この場合、設定ファイルを次の場所にコピーします。

/Library/LauchDaemons

InDesign Server をユーザーアカウントから実行したい場合は、次のシステムの Library フォルダーまたはユーザーの Library フォルダーのいずれかの LaunchAgents フォルダーに plist ファイルをコピーします(ユーザーの LaunchAgents フォルダーを作成する必要がある場合があります)。

/Library/LaunchAgents/Users/<username>/Library/LaunchAgents

ProgramArguments アプリケーションの起動時に使用される引数を表す文字列の配列。 配列の最初の要素は、アプリケーションのフルパスです。 配列の残りの要素は、コマンドラインから InDesign Server を起動する場合に使用される引数と同じです。

InDesign Server からのコンソール出力を受け取るには、-LogToApplicationEventLog 引数を使用する必要があります。

RunAtLoad true を設定します。 デーモンがシステム起動時にロードされるか、または launchctl を使用して手動でロードされる際に、InDesign Server が起動されます。

オプション 説明

Page 19: InDesign Server

第 2 章 InDesign Server のインストールと実行 InDesign Server の実行 19

デーモンのロード

plist ファイルを起動フォルダーにコピーしたら、デーモンを自動的にロードするためにシステムを再起動します。 デーモンがロードされると、plist ファイルで指定した設定を使用して、InDesign Server が起動されます。 デーモンがロードされたことを確認するには、ターミナルウィンドウで次のコマンドを使用します。

launchctl list

デーモンのラベルが表示されれば、デーモンが正常にロードされたことがわかります。

InDesign Server が実行中であることを確認するために、アクティビティモニターを使用して、実行中のすべてのプロセスを調べることができます。

次のように launchctl コマンドを使用して、デーモンを手動でロードできます。

launchctl load /Library/LaunchDaemons/com.adobe.ids.launchd.12345.plist

デーモンのアンロード

次のように launchctl を使用してデーモンを手動でアンロードすることができますが、デーモンをアンロードしても、InDesign Server インスタンスは終了されないことに注意してください。

launchctl unload /Library/LaunchDaemons/com.adobe.ids.launchd.12345.plist

InDesign Server インスタンスを終了するには、終了を指示するスクリプトを InDesign Server に送信するか、アクティビティモニターを使用してプロセスを終了します。

Page 20: InDesign Server

20

3 InDesign Server との接続

この章では、InDesign Server と接続する様々な方法について説明します。

20ページの「SOAP を使用した InDesign Server との接続」

23ページの「プラグインを使用した InDesign Server との接続」

24ページの「COM を使用した InDesign Server との接続(Windowsのみ)」

25ページの「LBQ を使用した InDesign Server との接続」

また、次の内容についても説明します。

26ページの「エラーメッセージの処理」

27ページの「よくある質問(FAQ)」

SOAP を使用した InDesign Server との接続InDesign Server では、RunScript という 1 つの SOAP コマンドがサポートされています。このコマンドにより、InDesign Server スクリプトを実行できます。 スクリプトは、JavaScript、VBScript(Windows のみ)、AppleScript(Mac OS のみ)を使用して作成できます。 RunScript を呼び出すと、スクリプトファイルが InDesign Server に渡され、InDesign Server によって内部的にスクリプトが実行されます。

RunScript コマンドは、InDesign Server WSDL によって定義されています。 この WSDL と業界標準の SOAP ツールを使用し、SOAP メッセージパケットを自動的に生成することができます。 WSDL を確認するには、次の 2 つの方法があります。

InDesign Server SDK ファイルの IDSP.wsdl を調べる。

-port 引数を使用して InDesign Server を起動した後に、HTTP を使用して WSDL にアクセスする(例えば、http://localhost:12345/service?wsdl)。

InDesign Server と対話する SOAP クライアントを作成する方法について詳しくは、『Adobe InDesign Server Solutions』の「Working with InDesign Server SOAP」、または SDK 内の「sampleclient」サンプルを参照してください。

InDesign Server スクリプトを実行する sampleclient の使用InDesign Server では、サンプルの SOAP クライアントアプリケーションである sampleclient が提供されています。sampleclient はコマンドラインのアプリケーションで、InDesign Server の RunScript SOAP コマンドを使用して、スクリプトを InDesign Server に送信します。 スクリプトは、JavaScript、AppleScript または VBScript で作成できます。 SampleClient では、AppleScript の拡張子を .applescript、VBScript の拡張子を .vbs と想定しています。 その他の拡張子はすべて、JavaScript であると見なされます。

InDesign Products SDK には、sampleclient の構築に必要なコンポーネントが含まれています。

ソースコードは、<IDS SDK>/samples/sampleclient-cplusplus-soap/ にあります。

Page 21: InDesign Server

第 3 章 InDesign Server との接続 SOAP を使用した InDesign Server との接続 21

sampleclient のコマンドライン引数

sampleclient の引数として、InDesign Server を実行中のシステム、SOAP 通信を受け入れるために設定されたポート、実行するスクリプトファイルの名前、スクリプトに渡す引数を指定できます。sampleclient の構文は、次のとおりです。引数については、その次の表で説明します。

sampleclient [-host hostID:port] [-server] scriptPath [arguments][-repeat number_of_reps] [-h]

引数 説明

arguments オプション。 引数をスクリプトに渡すために使用される、1 つ以上の名前と値のペアです。 書式は、argname=value です。argname は、スクリプトが読み込む引数の名前で、value は、その値です。 複数の引数は、スペースで区切ります。 次に例を示します。

sampleclient -host localhost:18383 /myScript.jsx myArg="hello world"

スクリプトでは、アプリケーションオブジェクト内の scriptArgs オブジェクトの get メソッドを使用して引数の値を読み込みます。 次の例では、myArg という名前の引数を取得します。

myArg = app.scriptArgs.get("myArg");

-h オプション。 これらの引数の簡単な説明を表示します。

-host hostID:port

オプション。 InDesign Server を実行中のホストです。hostID は、InDesign Server を実行中のシステムの識別子です。つまり、システムの IP アドレス、システムのホスト名(例えば、ourhost.corp.company.com)、またはキーワード「localhost」(InDesign Server を実行中のコンピューターで sampleclient を実行する場合)のいずれかになります。 IPv4 アドレスと IPv6 アドレスの両方が利用できます。port は、SOAP メッセージを受け入れるために設定したホストのポート番号です。 次に例を示します。

-host 10.0.0.1:18383-host [fe80::405:2345:fe56:8901]:18383

ローカルシステム上では、次のようになります。

-host localhost:18300

-repeat オプション。 スクリプトを実行する回数を指定します。

Page 22: InDesign Server

第 3 章 InDesign Server との接続 SOAP を使用した InDesign Server との接続 22

scriptPath 必須。 -server 引数がない場合、scriptPath は、ローカルファイルシステム上のスクリプトファイルへのパスになります。 パスは、絶対パスまたは現在の作業ディレクトリを基準とする相対パスになります。 -server 引数を使用する場合、scriptPath は、2 つの形式のうちのいずれかになります。 1 つ目の形式では、scriptPath は、対象の InDesign Server インスタンスのファイルシステムに基づいた、スクリプトへの絶対パスになります。

Windows の場合:

C:¥<myScriptsFolder>¥myScript.jsx

Mac OS の場合:

~/<myScriptsFolder>/myScript.jsx

2 番目の形式では、scriptPath は、事前に定義されているパス定数に基づいたものになります。 InDesign Server では、Scripts:Application と Script:User の 2 つのパス定数が定義されています。 Scripts:Application は、アプリケーションのスクリプトフォルダーを表します。 これは次の場所になります。

Windows の場合:

C:¥Program Files¥Adobe¥Adobe InDesign CS6 Server¥Scripts¥

Mac OS の場合:

/Applications/Adobe InDesign CS6 Server/Scripts/

Scripts:User は、ユーザーのスクリプトフォルダーを表します。 これは次の場所になります。

Windows の場合:

C:¥Documents and Settings¥<username>¥Application Data¥Adobe¥InDesign Server¥<version>¥<locale>¥configuration_12345¥Scripts¥

Windows Vista および Windows Server 2008 の場合:

C:¥Users¥<username>¥AppData¥Roaming¥Adobe¥<version>¥<locale>¥configuration_12345¥Scripts¥

Mac OS の場合:

/Users/<username>/Library/Preferences/Adobe InDesign Server/<version>/<locale>/configuration_12345/Scripts

スクリプトファイルを InDesign Server コンピューター上のスクリプトフォルダーの 1 つに配置してから、対応するパスを sampleclient に渡します。 次に例を示します(Windows と Mac OS の両方で、コロン(:)をパスの区切りとして使用する必要があることに注意してください)。

Scripts:Application:myScript.jsxScripts:User:myScript.jsx

-server オプション。 このキーワードが指定されている場合、scriptPath は、InDesign Server を実行中のコンピューター上のファイルを表すものと見なされます。 指定されていない場合は、scriptPath は、SampleClient を実行中のローカルコンピューター上のファイルを表すものと見なされます。

引数 説明

Page 23: InDesign Server

第 3 章 InDesign Server との接続 プラグインを使用した InDesign Server との接続 23

SampleClient の起動

1. InDesign Server によって実行可能なスクリプトファイルが必要です。 InDesign Server SDK のサンプルスクリプトの 1 つを使用するか、InDesign スクリプト API を使用して独自のスクリプトを作成することができます。 スクリプトを作成する場合は、InDesign Server にはユーザーインターフェイスがないことに留意して、スクリプトがユーザーインターフェイスコンポーネントに依存しないようにしてください。

2. SOAP 用の InDesign Server を起動します。 詳しくは、13ページの「SOAP 用 InDesign Server の起動」を参照してください。 InDesign Server が起動されるホストとポートを必ず書き留めておいてください。

3. 新しいコマンドラインウィンドウを開きます(Windows ではコマンドプロンプト、Mac OS ではターミナルを使用します)。

4. 次のように、ディレクトリを SampleClient がある場所に変更します。

64 ビット Windows:

cd "C:¥Program Files¥Adobe¥Adobe InDesign CS6 Server x64"

Mac OS:

cd '/Applications/Adobe/Adobe InDesign CS6 Server'

5. 適切なホスト、ポート、スクリプトファイルパスを使用して、SampleClient コマンドを実行します。 次の例を参照してください。

InDesign Server をローカルで実行中の場合:

sampleclient -host localhost:18383 yourScriptPath

InDesign Server を別のシステム上で実行中の場合:

sampleclient -host 192.168.1.100:18383 yourScriptPath

6. sampleclient によって、スクリプトに対するメッセージや戻り値がコマンドラインウィンドウに表示されるので、監視のために使用することができます。

プラグインを使用した InDesign Server との接続InDesign Server 用のプラグイン開発には、InDesign 用のプラグイン開発と同様に、C++、オブジェクト指向プログラミング、設計の基本的なスキルが必要です。 InDesign Server にはデスクトップ版の InDesign のようなユーザーインターフェイスがありません。そのため、新しいプラグインを作成したり、InDesign Server での使用のために既存の InDesign プラグインを移植したりする場合に、特に考慮すべき事項が数多くあります。

『Getting Started with Adobe InDesign Plug-In Development』の「InDesign Server Plug-in Techniques」では、InDesign Server の環境で正常に動作するプラグインの作成方法が説明されています。 このマニュアルでは、64 ビットプラグインの作成方法も説明されています。

InDesign Server x64 でロードおよび実行するプラグインの場合は、プラグインを 64 ビットバージョンに変換する必要があります。

スクリプトを使用してプラグインと対話するには、プラグインをスクリプト可能にする必要があります。 詳しくは、『Adobe InDesign Plug-In Programming Guide』の「Scriptable Plug-in Fundamentals」の章を参照してください。このマニュアルでは、プラグインの API をスクリプティング DOM で公開する方法が説明されています。

Page 24: InDesign Server

第 3 章 InDesign Server との接続 COM を使用した InDesign Server との接続(Windowsのみ) 24

COM を使用した InDesign Server との接続(Windowsのみ)InDesign Server では、COM タイプライブラリが公開されています。COM タイプライブラリを使用して、InDesign Server と相互運用する COM コンポーネントを作成することができます。 タイプライブラリには、InDesign Server スクリプティング DOM のクラス、メソッド、定数の定義が含まれています。

InDesign Server はプラグインをベースにしています。そのため、スクリプティング DOM は、起動時にどのプラグインが利用できるかによって変わります。 InDesign Server タイプライブラリは、適切な状態に保たれるように、起動時に作成または更新され、ローカルのハードドライブに格納されます。 生成された .tlb ファイルは、次に示す Application Data フォルダーに保存されます。

C:¥Documents and Settings¥All Users¥Application Data¥Adobe¥InDesign Server¥<version>¥<locale>¥configuration_12345¥Scripting Support¥<version>¥Resources for Visual Basic.tlb

(Windows Vista および Windows Server 2008 の場合は、次のようになります)

C:¥ProgramData¥Adobe¥InDesign Server¥<version>¥<locale>¥configuration_12345¥Scripting Support¥<version>¥Resources for Visual Basic.tlb

前述のパスの「configuration_12345」は、テーブルファイルを作成した InDesign Server インスタンスの設定名です。

InDesign Server COM タイプライブラリは、型定義の弱い InDesign Server スクリプトモデルに基づいているため、同様に型の取り扱いが厳しくありません。 COM コンポーネントを開発する言語を選択する際には、言語の型定義が弱くなるほど InDesign Server COM タイプライブラリとの互換性が高まることに留意してください。

Visual Basic

InDesign Server COM コンポーネントを作成する場合、最も確実なのは Visual Basic 6 を使用することです。Visual Basic のより新しいバージョンでは型定義の強い構造が採用され、型定義の弱い InDesign Server DOM との互換性が低くなっています。

プロジェクトのコンパイルオプションである「Option explicit」と「Option strict」をオフに設定している場合は、Visual Basic .NET を使用することも可能です。 これらの設定により、VB.NET の強い型定義ルールを緩和することができます。また、変数に型が強制されてしまうので、Dim を使用した変数の宣言も避ける必要があります。 コード補完機能は変数が Dim を使用して宣言されている場合のみ有効なので、通常は Dim を使用してメソッドの先頭で変数を宣言し、その後、コードの実行前に Dim 文を REM でコメントアウトします。

プロジェクトで InDesign Server COM タイプライブラリを使用するには、InDesign Server 用の interop DLL にアクセスできる必要があります。 .NET では、.tlb ファイルへの参照を作成することでアクセスが可能になります。 プロジェクトを右クリックし、「参照の追加」を選択します。 次に「COM」タブを選択し、「Adobe InDesign CS6 Server Type Library」を探します。 ダイアログボックスに表示されない場合は、まずコンピューターで InDesign Server を起動する必要があります。起動すると、InDesign Server によってタイプライブラリが作成されます。

コード内で InDesign Server のインスタンスへの参照を作成するには、CreateObject メソッドを使用します。 CreateObject では、スクリプトが対象とする InDesign Server インスタンスの選択は制御できないことに注意してください。

Set myApp = CreateObject("InDesignServer.Application")

コード内で InDesign Server の特定のインスタンスへの参照を作成するには、GetObject メソッドを使用します。次に示すように、対象の InDesign Server インスタンスの設定名を渡します。

Set myApp = GetObject("configuration_12345")

さらに詳しい情報やサンプルについては、<IDS SDK>/samples/ フォルダーを確認してください。また、『Adobe InDesign スクリプティングガイド』を参照してください。

Page 25: InDesign Server

第 3 章 InDesign Server との接続 LBQ を使用した InDesign Server との接続 25

C#

InDesign Server COM コンポーネントの作成に C# を使用することはお勧めできません。 C# は型定義の強い言語で、型定義の弱い InDesign Server スクリプティング DOM とは多くの点で一致しません。 しかしながら、型キャストとパラメーター指定に注意して、単純な InDesign Server COM コンポーネントを作成することも可能です。

可能なソリューションの 1 つは、C# コードでスクリプトファイルまたはスクリプトのテキストを渡して InDesign Server の doScript メソッドを呼び出す方法です。 例については、InDesign Server SDK の sampleclient-csharp-com サンプルを参照してください。

C# を使用してさらに複雑なコンポーネントを作成する際には、次のような点で失敗する場合があります。

C# は型定義が強いため、常にオブジェクトの型を認識していなければなりません。 つまり、スクリプティング DOM から取得されるほぼすべてのオブジェクトを型キャストする必要があるということです。 オブジェクトの型が何であるか確かな場合は問題ありませんが、スクリプティング DOM の多くのメソッドでは複数の変数の型を受け取ったり返したりします。つまり、戻される型を予測することができない可能性があります。

パラメーターは、スクリプティング DOM ではオプションであったとしても、メソッドにすべて指定する必要があります。 「null」を渡すことはできません。パラメーターは完全形式のオブジェクトである必要があります。

オプションのパラメーターは、処理できない可能性があります。 例えば、スクリプティング DOM のメソッドでは、メソッドの最初のパラメーターを渡さないことが可能であり、この場合 InDesign Server では 2 番目のパラメーターが考慮されます。 これは C# ではできません。

C# で InDesign Server のインスタンスへの参照を作成するには、次に示すように InteropServices のメソッドである Marshal.BindToMoniker を使用します。

myApp = (InDesignServer.Application)(System.Runtime.InteropServices.Marshal.BindToMoniker("configuration_12345"));

詳細とサンプルについては、InDesign Server SDK の samples フォルダーを確認してください。

LBQ を使用した InDesign Server との接続InDesign Server には、ジョブキューイングと負荷分散の機能を提供する LBQ というオプションのコンポーネントが含まれています。 LBQ はあくまでもオプションであり、InDesign Server を実行するための必須のコンポーネントではありません。 これは負荷分散とジョブキューイングのソリューションの 1 つです。

LBQ は、1 台以上のコンピューターで実行されている複数の InDesign Server インスタンス間での負荷分散を実現します。 InDesign Server インスタンスとの通信には CORBA が使用されるので、各インスタンスを 13ページの「CORBA 用 InDesign Server の起動」の説明にあるとおりに起動する必要があります。

負荷分散と基本的なキューイングに加えて、LBQ には次の機能が含まれています。

優先順位を考慮したキューイング

ステータス表示機能

ロギング

複数キュー

キューに入っているジョブの編集

クライアントは RESTful API を使用して LBQ と対話します。 RESTful API の呼び出しは URL リクエストをとおして行われます。 リクエストが処理されると、XML レスポンスが返されます。

Page 26: InDesign Server

第 3 章 InDesign Server との接続 エラーメッセージの処理 26

LBQ では次の操作がサポートされます。

EnqueueJob

ModifyJob

CancelJob

StartQueue

StopQueue

ReinitializeQueue

GetVersion

JobStatus

QueueStatus

IDSStatus

Ping

Kill

これらの操作について詳しくは、『Adobe Indesign Server Solutions』の「Working With Load Balancing and Queueing」を参照してください。LBQ の使用に関するその他の有用な情報も掲載されています。

エラーメッセージの処理InDesign Server のメッセージとエラーは、stderr と stdout に記録されます。 これらのエラーとメッセージは取得またはリダイレクトが可能です。

エラーとメッセージへのアクセスプラグインでは、C++ API の MessageLog や IErrorList を使用します。 この方法は、『Getting Started with Adobe InDesign Plug-In Development』の「InDesign Server Plug-in Techniques」で説明されています。

エラーとメッセージのリダイレクトInDesign Server をアプリケーション内から実行している場合は、InDesign Server からアプリケーションへメッセージを伝達するように stdout と stderr を設定することができます。

Windows では、InDesign Server の起動時に -LogToApplicationEventLog 引数を指定すると、InDesign Server のメッセージを Windows のアプリケーションイベントログにリダイレクトできます。 InDesign Server を InDesign Server Windows Service から実行している場合、記録されたメッセージは Windows のアプリケーションイベントログに自動的にリダイレクトされます。 イベントログは、コントロールパネルの「コンピュータの管理」にある標準のイベントビューアで確認できます。

Mac OS では、InDesign Server の起動時に -LogToApplicationEventLog 引数を指定すると、メッセージをシステムコンソールにリダイレクトできます。 ログはユーティリティアプリケーションである Console を使用して確認できます。

Page 27: InDesign Server

第 3 章 InDesign Server との接続 よくある質問(FAQ) 27

よくある質問(FAQ)サーバーの起動時に SOAP ポートと IOR ファイルの両方を指定できますか。

はい。 InDesign Server では、SOAP と CORBA のコマンドを同時に処理できます。ただし、パフォーマンスが低下する可能性があります。

InDesign Server スクリプティング DOM のすべてのクラスとメソッドを一覧にしたものはありますか。

はい。 Adobe ExtendScript Toolkit のヘルプメニューから、InDesign Server のオブジェクトモデルリファレンスにアクセスできます。

InDesign Server を SOAP 用に起動しない場合でも、InDesign Server と対話できますか。

はい。 SOAP を使用しなくても、JavaScript、AppleScript、VBScript または COM を使用して、InDesign Server と通信できます。

スクリプトから SOAP クライアントに値を返すには、どのようにするのですか。

JavaScript と AppleScript では、スクリプトで発生した最後の値がスクリプトの戻り値になります。 VBScript でスクリプトの戻り値を定義するには、returnValue という名前の変数を設定します。 次の各言語の例では、最初のインデックスのドキュメント名が返されます。

JavaScript:

var documentName = app.documents.item(0).name;documentName;

AppleScript:

tell application "InDesignServer"set documentName to name of document 1

end telldocumentName

VBScript:

Set myApp = CreateObject("InDesignServer.Application")documentName = myApp.Documents.Item(1).NamereturnValue = documentName

Page 28: InDesign Server

28

4 次のステップ

InDesign Server の実行方法を習得し、SOAP を使用して SDK で提供されるサンプルを実行したら、次は InDesign Server の機能を拡張してみましょう。 機能の拡張は、スクリプト、プラグイン、さらには InDesign とパブリケーションワークフローを統合するアプリケーションを作成することで行えます。

この章では、このようなスクリプトやプラグイン、アプリケーションの作成に役立つリソースを紹介します。

InDesign Server のスクリプトおよびプラグイン InDesign および InDesign Server のスクリプトおよびプラグインの作成について詳しくは、InDesign Products SDK をインストールして、次のマニュアルを参照してください。

『Adobe InDesign Plug-In Programming Guide』 — InDesign Server 用 C++ プラグインの作成方法が掲載されています。

『Adobe InDesign スクリプティングガイド』 — InDesign 用スクリプトの作成に関する基本的な情報や多数のサンプルが掲載されています。 このマニュアルには、AppleScript 用、JavaScript 用、VBScript 用の 3 種類があります。

『Getting Started with Adobe InDesign Plug-In Development』の「InDesign Server Plug-in Techniques」の章

『Adobe InDesign Server Solutions』の次の章

「Working with InDesign Server SOAP」

「InDesign Server Scalability and Performance」 — InDesign Server のパフォーマンスとスケーラビリティを最大限に生かせるようにシステムを設定する方法とベンチマークが掲載されています。

『Adobe Scripting』(Chandler McWilliams 著、New York:Wiley Publishing Inc. 刊、2003 年、ISBN 0-7645-2455-0)

JavaScriptJavaScript 言語のマニュアルと使用方法の説明については、次の書籍を参照してください。

『JavaScript: The Definitive Guide, 4th Edition』(David Flanagan 著、O’Reilly 刊、2001 年、ISBN 0-596-00048-0)

『JavaScript Bible. 5th Edition』(Danny Goodman and Michael Morrison 著、John Wiley and Sons 刊、1998 年、ISBN 0-7645-57432)

『JavaScript Programmer’s Reference』(Cliff Wooton 著、Wrox 刊、2001 年、ISBN 1-861004-59-1)

SOAPSOAP 通信については、W3C の「SOAP primer」を参照してください(http://www.w3.org/TR/soap12-part0/)。