Introduction à Adobe InDesign CS5 Server

Transcription

Introduction à Adobe InDesign CS5 Server
ADOBE® INDESIGN® CS5 SERVER
INTRODUCTION À
ADOBE INDESIGN CS5 SERVER
© 2010 Adobe Systems Incorporated. All rights reserved.
Introduction à Adobe InDesign CS5 Server
Note technique n° 10123
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, InDesign, and Version Cue are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other
countries. Microsoft and Windows are either registered trademarks or trademarks 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. Java is a trademark or registered trademark of Sun Microsystems,
Incorporated 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.
Sommaire
Terminologie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Feuille de route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Création de scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Java. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
C++. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
COM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Service Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Démon launchd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Performances et évolutivité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Installation d’InDesign Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Configuration système requise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Exécution du programme d’installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Ensemble de fonctions CJC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Pare-feu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Installation du service Windows InDesign Server (sous Windows uniquement). . . . . . . . . . 10
Installation du kit SDK d’InDesign Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Exécution d’InDesign Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Arguments d’InDesign Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Lancement d’InDesign Server à partir de la ligne de commande . . . . . . . . . . . . . . . . . . . 13
Lancement d’InDesign Server pour une utilisation avec la technologie SOAP . . . . . . . . . . . 14
Lancement d’InDesign Server pour une utilisation avec la technologie CORBA . . . . . . . . . . 14
Lancement à partir d’un autre programme ou d’un autre script . . . . . . . . . . . . . . . . . . . 15
Exécution de plusieurs instances d’InDesign Server . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Fermeture d’InDesign Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Configuration du service Windows InDesign Server . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Configuration d’un démon launchd InDesign Server pour Mac OS. . . . . . . . . . . . . . . . . . 18
Communication avec InDesign Server basée sur la technologie SOAP . . . . . . . . . . . . . . . . . . 21
Utilisation de sampleclient pour exécuter un script InDesign Server. . . . . . . . . . . . . . . . . 21
Communication avec InDesign Server basée sur la technologie Java . . . . . . . . . . . . . . . . . . . 24
Ecriture d’un composant Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Exécution d’une application Java d’InDesign Server . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Communication avec InDesign Server par le biais d’un module externe . . . . . . . . . . . . . . . . . 26
3
Sommaire
Communication avec InDesign Server basée sur la technologie COM (Windows uniquement) . . . 27
Visual Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
C# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Communication avec InDesign Server basée sur la technologie LBQ . . . . . . . . . . . . . . . . . . . 29
Gestion des messages d’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Accès aux erreurs et messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Redirection des erreurs et messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Etapes suivantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Création de scripts, modules externes et composants Java pour InDesign Server . . . . . . . . 31
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
SOAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Java. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
CORBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Forum aux questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Puis-je spécifier un port SOAP et un fichier IOR lors du lancement du serveur ?. . . . . . . . . . 32
Existe-t-il un index de tous les objets et méthodes figurant dans l’API Java
d’InDesign Server ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Existe-t-il un index de toutes classes et méthodes figurant dans le modèle DOM de
création de scripts d’InDesign Server ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Comment puis-je invoquer mon module externe depuis l’API Java d’InDesign Server ? . . . . 33
Puis-je interagir avec InDesign Server si je n’utilise ni SOAP ni CORBA ?. . . . . . . . . . . . . . . 33
Comment renvoyer une valeur de mon script à mon application SOAP client ? . . . . . . . . . . 33
4
Introduction à Adobe InDesign CS5 Server
Introduction à Adobe InDesign CS5 Server
Terminologie
Introduction à Adobe InDesign CS5 Server
Le présent document fournit une vue d’ensemble d’Adobe® InDesign® Server. Il explique
comment installer et exécuter InDesign Server dans un environnement simple et décrit de
manière concise comment communiquer avec InDesign Server à partir de composants externes.
InDesign Server est utilisé par les intégrateurs système et les développeurs tiers pour créer des
solutions de publication serveur. InDesign Server peut être considéré comme une version
d’InDesign sans interface utilisateur. InDesign Server utilise les mêmes bases de code que la
version de bureau d’InDesign, mais il a été adapté pour être utilisé comme serveur. Ses
fonctionnalités incluent la prise en charge de plusieurs instances, la collecte et l’enregistrement
des erreurs, ainsi que la communication à l’aide des technologies SOAP et CORBA (Common
Object Request Broker Architecture).
A l’instar de la version de bureau, InDesign Server offre un environnement de développement
perfectionné. Outre la prise en charge des standards ouverts tels que XML, InDesign Server se
caractérise également par sa prise en charge performante des scripts et son évolutivité. En effet,
les API fournies dans les kits SDK (Software Developer’s Kit) des produits InDesign et le
kit SDK d’InDesign Server permettent d’étendre facilement les fonctionnalités de ce produit.
Ces API peuvent être utilisées pour la création de modules externes C++, de composants Java,
de scripts JavaScript, de scripts AppleScript et de scripts VBScript.
Terminologie
Vous trouverez ci-dessous une définition des termes utilisés dans ce document.
z Ant : Another Neat Tool, un outil de construction Java.
z Client : émetteur d’une demande de services depuis un serveur situé dans un système
informatique distribué.
z CORBA : Common Object Request Broker Architecture, un modèle d’objet distribué
indépendant du langage.
z COM : Component Object Model, une technologie facilitant l’interopérabilité des
applications et des composants.
z IDS : InDesign Server.
z Fichier IOR : Interoperable Object Reference, un fichier de référence d’objet interopérable.
Ce fichier est utilisé par CORBA et ses clients pour identifier un objet dans le modèle d’objet
CORBA.
z IPv6 : Internet Protocol version 6, le successeur de l’IPv4. L’IPv6 est pris en charge par
InDesign CS4 Server et les versions ultérieures.
z Job queueing (mise en file d’attente des travaux) : mécanisme qui place les travaux envoyés
dans une file d’attente, les exécute de manière asynchrone et permet de vérifier
ultérieurement l’état d’un travail.
z Load balancing (équilibrage des charges) : distribution des travaux sur plusieurs instances et
serveurs en fonction des disponibilités.
Introduction à Adobe InDesign CS5 Server
5
Introduction à Adobe InDesign CS5 Server
Feuille de route
z
z
z
z
z
z
z
LBQ : module complémentaire introduit dans InDesign CS5 Server qui permet de mettre
les travaux en file d’attente et d’équilibrer les charges de plusieurs instances
d’InDesign Server.
ORB : Object Request Broker, un logiciel qui implémente le modèle d’objet CORBA.
<SDK> : chemin vers l’emplacement dans lequel vous avez installé le kit SDK d’InDesign Server.
Serveur : fournisseur de services dans un système informatique distribué.
Fenêtre d’invite de commande : fenêtre de ligne de commande. Sous Windows®, utilisez
Invite de commandes (situé dans le dossier Accessoires du menu Démarrer). Sous Mac OS®,
utilisez l’utilitaire Terminal (situé sous /Applications/Utilitaires).
SOAP : Simple Object Access Protocol, un protocole de communication basé sur le
langage XML permettant l’échange de messages entre les programmes et les plates-formes.
InDesign Server prend en charge plusieurs versions de SOAP : les versions standard 1.1
et 1.2 de SOAP (RPC et doc/lit) ainsi que le format WSDL 1.1.
WSDL : Web Service Description Language, ou langage de description de services Web, un
format reposant sur le langage XML qui permet de décrire comment accéder à un
service Web et d’indiquer les opérations restant à effectuer.
Feuille de route
Les sections suivantes portent sur l’utilisation et sur l’extension d’InDesign Server.
Documentation
Le kit SDK d’InDesign Server et le kit SDK des produits InDesign renferment des documents et
exemples de code, qui vous aideront dans l’extension d’InDesign Server. Vous pouvez
télécharger ces deux kits SDK sur le site Adobe.com. La documentation citée dans ce document
est incluse dans les kits SDK.
Création de scripts
A l’instar d’InDesign, InDesign Server prend en charge l’écriture de scripts JavaScript,
AppleScript et VBScript.
Ecriture d’un script
Les documents suivants vous guideront lors de l’écriture de scripts InDesign Server :
z Didacticiel de scripts d’Adobe InDesign CS5
z Guide des scripts d’Adobe InDesign CS5
z Guide des scripts d’Adobe InDesign CS5 Server
z Vous pouvez également accéder au document intitulé InDesign CS5 Object Model Viewer
(Afficheur de modèles d’objet d’InDesign CS5) à partir du menu d’aide d’Adobe
ExtendScript Toolkit CS5.
6
Introduction à Adobe InDesign CS5 Server
Feuille de route
Exécution d’un script
InDesign Server propose une méthode SOAP, appelée RunScript, qui permet d’envoyer un
script à InDesign Server. Votre version d’InDesign Server comprend un exemple d’application
SOAP client, appelé SampleClient, que vous pouvez utiliser pour exécuter un script. Voir la
section « Utilisation de sampleclient pour exécuter un script InDesign Server », page 21.
SampleClient repose sur le langage C++ ; son code source et ses fichiers de projet sont inclus
dans le kit SDK des produits InDesign. Le kit SDK d’InDesign Server contient d’autres
exemples de projets client fondés sur plusieurs langages, dont Java, C#, PHP, VB.NET et Flex.
Java
Ecriture d’un composant Java
InDesign Server comporte une API Java qui utilise la technologie CORBA pour communiquer avec
InDesign Server. Pour plus de détails, voir la section « Communication avec InDesign Server
basée sur la technologie Java », page 24 et la documentation intitulée Working with Adobe
InDesign CS5 Server Java (Utilisation de la technologie Java d’Adobe InDesign CS5 Server).
C++
Ecriture d’un module externe C++
InDesign Server repose sur le langage C++ et prend en charge les modules externes C++ développés
à l’aide de l’API C++ d’InDesign. Pour plus de détails, voir la section « Communication avec
InDesign Server par le biais d’un module externe », page 26, ainsi que les documents intitulés Adobe
InDesign CS5 Programming Guide (Guide de programmation Adobe InDesign CS5) et
Adobe InDesign CS5 Server Plug-in Techniques (Techniques de création de modules externes pour
Adobe InDesign CS5 Server).
Accès à votre module externe à l’aide de la création de scripts ou de Java
Pour que votre module externe soit accessible à partir d’un script ou d’un composant Java, il doit
prendre en charge les scripts. Pour plus de détails, voir le chapitre « Scriptable Plug-in
Fundamentals » (Eléments fondamentaux du module externe pour scripts) de la documentation
Adobe InDesign CS5 Programming Guide (Guide de programmation Adobe InDesign CS5).
Pour accéder à votre module externe à partir d’un composant Java, vous devez également
régénérer le fichier JAR de l’API Java (InDesignServerAPI.jar) ainsi que le module externe de
prise en charge de la technologie CORBA, comme décrit dans la documentation intitulée
Regenerating the Adobe InDesign CS5 Server Java API (Régénération de l’API Java
d’Adobe InDesign CS5 Server).
COM
InDesign Server publie une bibliothèque de types à utiliser pour créer des composants COM qui
interagissent avec InDesign Server. Les composants COM peuvent être créés dans plusieurs langages.
Pour plus de détails sur l’utilisation de Visual Basic et de C#, voir la section « Communication avec
InDesign Server basée sur la technologie COM (Windows uniquement) », page 27.
Introduction à Adobe InDesign CS5 Server
7
Introduction à Adobe InDesign CS5 Server
Installation d’InDesign Server
Service Windows
Vous pouvez utiliser un service Windows pour gérer InDesign Server. Pour avoir recours à ce
service, commencez par installer InDesignServerService comme décrit à la section
« Installation du service Windows InDesign Server (sous Windows uniquement) », page 10.
Utilisez ensuite le composant logiciel enfichable Microsoft Management Console
d’InDesign Server pour configurer InDesignServerService.
Démon launchd
Utilisez un démon launchd pour gérer InDesign Server sous Mac OS. Pour plus de détails sur
la configuration d’un démon, voir la section « Configuration d’un démon launchd
InDesign Server pour Mac OS », page 18.
Performances et évolutivité
La documentation et les outils relatifs aux performances et à l’évolutivité d’InDesign Server
sont disponibles dans le kit SDK d’InDesign Server.
Installation d’InDesign Server
Avant d’installer InDesign Server, assurez-vous que votre système est conforme à la configuration
requise. Exécutez ensuite le programme d’installation obtenu via le système ESD (Electronic
Software Download, distribution électronique de logiciels). Une fois l’installation terminée,
exécutez InDesign Server à partir de la ligne de commande comme décrit à la section
« Exécution d’InDesign Server », page 11. Veuillez noter que la sérialisation d’InDesign Server
intervient sur la ligne de commande au premier lancement, à l’aide de l’argument -serialnumber.
Configuration système requise
Pour plus de détails sur la configuration système requise pour l’exécution d’InDesign Server,
voir le fichier Lisez-moi de l’application.
Pour exécuter le service Windows InDesign Server, vous devez disposer de Microsoft
.NET Framework version 2.0 ou ultérieure.
Pour écrire un code Java utilisant l’API Java d’InDesign Server, vous devez disposer du kit JDK
(Java Development Kit) version 1.6.0 ou ultérieure.
8
Introduction à Adobe InDesign CS5 Server
Installation d’InDesign Server
Exécution du programme d’installation
Après avoir téléchargé et développé le système ESD (Electronic Software Download,
distribution électronique de logiciels) pour InDesign Server, cliquez deux fois sur l’icône du
programme d’installation pour l’exécuter. Suivez les instructions affichées à l’écran. Pendant
l’installation, vous pouvez spécifier le dossier dans lequel installer InDesign Server ou utiliser
l’emplacement par défaut.
Sous Windows uniquement, lorsque vous installez InDesign Server sur un système
d’exploitation 64 bits, la version 64 bits de l’application est installée par défaut ; vous pouvez
toutefois choisir d'installer la version 32 bits d’InDesign Server. Lors d’une installation sur un
système d’exploitation 32 bits, seule la version 32 bits d’InDesign Server peut être installée.
Ensemble de fonctions CJC
Pour la composition, InDesign Server utilise l’ensemble de fonctions activé Romain (anglais)
ou Japonais (CJC). Sous Windows, des paramètres de registre permettent de spécifier
l’ensemble de fonctions. Mac OS inclut, quant à lui, deux applications : l’une activant l’ensemble
de fonctions Romain et l’autre activant l’ensemble de fonctions CJC.
Lors de l’installation d’InDesign Server sur une version anglaise de Windows, l’ensemble de
fonctions par défaut est défini sur Romain. Lors de l’installation sur une version chinoise de
Windows (par exemple), l’ensemble de fonctions par défaut est défini sur CJC. Lors de
l’installation sur une version anglaise de Windows, si vous choisissez le chinois comme langue
dinstallation, l’ensemble de fonctions par défaut est défini sur CJC.
Vous pouvez changer l’ensemble de fonctions par défaut en exécutant regedit et en modifiant
les clés suivantes (modifiez le numéro de version, le cas échéant) :
Application 32 bits sous Windows 32 bits :
HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\InDesign Server\<version>
Application 64 bits sous Windows 64 bits :
HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\InDesign Server\<version>
Application 32 bits sous Windows 64 bits :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Adobe\InDesign Server\<version>
Définissez la clé Feature Set Locale Setting sur 400 pour Romain ou sur 401 pour CJC. Le paramètre
est appliqué au lancement d’InDesign Server.
Pare-feu
Vous devez configurer de manière appropriée tout pare-feu existant entre un ordinateur (un
serveur) exécutant InDesign Server et les clients du serveur, afin que ces derniers puissent
établir une connexion avec le serveur. Pour plus de détails, voir la documentation de votre
pare-feu ou contactez votre administrateur réseau.
Introduction à Adobe InDesign CS5 Server
9
Introduction à Adobe InDesign CS5 Server
Installation d’InDesign Server
Installation du service Windows InDesign Server (sous Windows uniquement)
Le service Windows InDesign Server surveille des instances données d’InDesign Server et les
relance si elles sont interrompues ou si l’ordinateur est redémarré. Il redirige les messages
dInDesign Server vers le journal d’événements Windows et autorise la visualisation locale ou à
distance de ces messages. Ce service autorise également la configuration des instances
d’InDesign Server avec un nom et un mot de passe utilisateur différent des nom et mot de
passe de l’utilisateur actuel.
Vous pouvez installer ce service Windows à l’aide du programme d’installation
d’InDesign Server ou à partir d’une ligne de commande. Dans le premier cas, il vous suffit
d’exécuter le programme d’installation d’InDesign Server et de sélectionner l’option
d’installation des fichiers du service Windows pour InDesign Server. Dans le second cas,
définissez le dossier dans lequel vous avez installé InDesign Server comme répertoire actif, puis
exécutez la commande suivante :
InDesignServerService /install
Pour désinstaller le service Windows InDesign Server à l’aide de la ligne de commande, définissez le
dossier contenant InDesign Server comme répertoire actif, puis exécutez la commande suivante :
InDesignServerService /install /u
Le second composant du service Windows InDesign Server est le composant logiciel enfichable
Microsoft Management Console. Si vous avez installé le service à l’aide du programme
d’installation d’InDesign Server, le composant logiciel enfichable a également été installé.
Si vous avez utilisé la ligne de commande pour installer le service, vous devez également
installer le composant logiciel enfichable, comme décrit dans cette section.
Pour installer le composant logiciel enfichable sur un ordinateur 32 bits, exécutez la commande
suivante :
regsvr32 InDesignServerMMC.dll
Pour l’installer sur un ordinateur 64 bits, exécutez la commande suivante :
regsvr64 InDesignServerMMC64.dll
Pour désinstaller le composant logiciel enfichable Microsoft Management Console
d’InDesign Server, utilisez la même procédure, en ajoutant un argument de ligne de
commande supplémentaire :
regsvr32 InDesignServerMMC.dll /u
— ou —
regsvr64 InDesignServerMMC.dll /u
Pour plus de détails sur la configuration du composant logiciel enfichable, voir la section
« Configuration du service Windows InDesign Server », page 16.
Installation du kit SDK d’InDesign Server
Le kit SDK d’InDesign Server contient des exemples, des scripts, ainsi que la documentation
d’InDesign Server. Vous pouvez télécharger le kit SDK d’InDesign Server depuis le
site Adobe.com. Si vous le souhaitez, vous pouvez déplacer le dossier du kit SDK après l’avoir
configuré.
10
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
Exécution d’InDesign Server
Vous pouvez lancer InDesign Server à partir d’une ligne de commande ou d’un autre
programme ou script. Chaque méthode autorise des arguments de ligne de commande qui
contrôlent l’exécution et la configuration d’InDesign Server.
Arguments d’InDesign Server
Les arguments de ligne de commande d’InDesign Server vous permettent de configurer divers
aspects d’InDesign Server. La syntaxe de la ligne de commande suit le schéma ci-dessous ;
chaque argument est décrit dans le Tableau 1 :
InDesignServer [arguments]
TABLEAU 1 Arguments de ligne de commande d’InDesign Server
Argument
Description
-configuration name
Facultatif. Cet argument spécifie le nom de configuration de cette instance
d’InDesign Server. Utilisé par InDesign Server lors de la création du dossier de
configuration dans lequel sont stockées les données privées, le cache et les fichiers de
configuration, name doit désigner un nom de dossier valide du système actif. Par
défaut, le nom de ce dossier est « configuration_noport » ou « configuration_n »,
n correspondant au numéro de port (si l’option -port est spécifiée). Le dossier de
configuration est créé dans : Sous Windows :
C:\Documents and Settings\<nom d’utilisateur>\Application
Data\ Adobe\InDesign Server\<version>\<langue>\
Sous Windows Vista et Windows Server 2008 :
C:\Users\<nom
d’utilisateur>\AppData\Roaming\Adobe\InDesign
Server\<version>\<langue>\
Sous le service Windows, le dossier de configuration est créé dans : Sous Windows :
C:\Documents and Settings\All Users\Application Data\
Adobe\InDesign Server\<version>\<langue>\
Sous Windows Vista et Windows Server 2008 :
C:\ProgramData\Adobe\InDesign Server\<version>\<langue>\
Sous Mac OS, le dossier de configuration est créé dans :
/Users/<nom d’utilisateur>/Library/Preferences/Adobe
InDesign Server/<version>/<langue>/
Introduction à Adobe InDesign CS5 Server
11
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
12
Argument
Description
-[no]console
Facultatif. Sous Windows uniquement. Cet argument crée une nouvelle fenêtre de
console (une interface de commande) et redirige stderr et stdout vers cette fenêtre.
Si -noconsole est spécifié, stdout et stderr sont acheminés jusqu’au terminal (ou la
fenêtre) qui a lancé InDesign Server. Cet argument se révèle utile lorsque vous
utilisez le débogueur de Microsoft Visual Studio pour déboguer un module externe
InDesign Server en cours de développement. En effet, les données écrites dans
stderr et stdout sont supprimées par défaut par le débogueur. Cet argument peut
également se révéler utile lorsque vous lancez InDesign Server depuis une autre
application, comme un serveur d’applications. Il n’est disponible qu’avec
InDesignServer.exe et non avec InDesignServer.com. L’option par défaut est -noconsole.
-[no]errorlist
Facultatif. Cet argument détermine si InDesign Server doit stocker les erreurs
de script d’appels SOAP dans la mémoire. La liste d’erreurs n’est pas effacée
automatiquement ; si cette liste contient trop d’erreurs, les nouvelles erreurs seront
perdues. L’option par défaut est -noerrorlist.
-help
Facultatif. Affiche une courte description de tous les arguments.
-iorfile filepath
Cet argument est indispensable si vous utilisez la technologie Java/CORBA ; sinon,
il est facultatif. Il indique à InDesign Server où créer le fichier contenant la
référence IOR de l’objet Application. La référence IOR de ce fichier permet à un
client de créer une référence à l’objet Application d’InDesign Server. Vous pouvez le
considérer comme un cookie que votre code client utilise pour accéder à l’objet
Application d’InDesign Server. Chaque instance du serveur requiert un fichier IOR
unique. De nombreux clients accèdent à un serveur donné à l’aide du fichier IOR de
ce serveur. L’affichage du message « [serveur] Writing IOR to ... » (Ecriture du fichier
IOR en cours sur...) confirme l’écriture de la référence IOR dans le fichier spécifié.
-LogToApplicationEventLog
Facultatif. Sous Windows, cet argument dirige les sorties de la console d’InDesign Server
vers le journal d’événements d’applications de Windows. Vous pouvez les visualiser dans
l’Observateur d’événements d’applications par défaut accessible depuis le Panneau de
configuration de l’outil Gestion de l’ordinateur. Sous Macintosh, cet argument est
conseillé si vous utilisez InDesign Server en tant que démon launchd. Vous pouvez
visualiser les sorties dans la console standard de Mac OS.
-maxerrors number
Facultatif. number spécifie le nombre maximum d’erreurs de script des appels SOAP
qu’InDesign Server doit stocker en mémoire. Le nombre par défaut est 10 000.
-pluginpath path[,path]
Cet argument est indispensable si vous utilisez la technologie Java/CORBA ; sinon,
il est facultatif. Il commande au serveur de charger tous les modules externes dans
les dossiers et sous-dossiers correspondants spécifiés. Lorsque vous indiquez le
sous-répertoire server/corba installé, le module externe de prise en charge de la
technologie Corba d’InDesign Server est chargé et activé. path est un chemin relatif
basé sur le dossier d’installation d’InDesign Server (par exemple, l’indication
« Server/Corba » fait référence au dossier C:\Program Files\Adobe\Adobe InDesign
CS5 Server\Server\Corba). N’utilisez jamais un chemin absolu. L’affichage du
message « [serveur] ApplicationIOR : ... » confirme le bon chargement du module
externe de prise en charge de la technologie Corba.
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
Argument
Description
-port number
Cet argument est indispensable si vous utilisez le protocole SOAP ; sinon, il est
facultatif. Il s’agit du numéro de port du socket utilisé par InDesign Server pour
traiter les requêtes SOAP envoyées par les applications clientes. S’il n’est pas spécifié,
le système ne peut utiliser aucun port et ne peut donc traiter aucune requête SOAP.
Chaque instance d’InDesign Server exécutée sur un même système doit disposer
d’un port unique pour activer la technologie SOAP. Le numéro de port doit être une
valeur entière positive.
-[no]previews
Facultatif. Cet argument précise si une prévisualisation est nécessaire ou non lors de
l’importation d’images. L’option par défaut est -nopreviews.
-[no]seh
Facultatif. Sous Windows uniquement. Cet argument spécifie l’utilisation ou non
d’un SEH (structured exception handling). L’option par défaut est -seh.
-[no]sendcrashlogs
Sous Mac OS uniquement. Cet argument envoie automatiquement des journaux
d’incidents à Adobe. L’option par défaut est -nosendcrashlogs.
-serialnumber number
Cet argument entre le numéro de série de l’application. Il ne doit être utilisé qu’une
seule fois pour déverrouiller l’application.
Lancement d’InDesign Server à partir de la ligne de commande
1. Ouvrez une nouvelle fenêtre d’invite de commande sur le système sur lequel InDesign Server
est installé. Sous Windows, utilisez Invite de commandes ; sous Mac OS, utilisez
l’utilitaireTerminal.
2. Définissez le dossier dans lequel InDesign Server est installé comme répertoire actif.
Sous Windows, le dossier contient l’application InDesignServer.com. Sous Mac OS, le
dossier contient le package d’applications InDesignServer.app. Par exemple :
Sous Windows :
cd "c:\Program Files\Adobe\Adobe InDesign CS5 Server\"
Sous Mac OS :
cd '/Applications/Adobe InDesign CS5 Server/'
3. Exécutez la commande ci-dessous. (Sous Windows, InDesignServer.com est exécuté par
défaut. L’application configure les chemins et exécute InDesignServer.exe.)
InDesignServer
4. InDesign Server affiche les messages de lancement dans la fenêtre d’invite de commande.
Une fois InDesign Server prêt à être utilisé, le message « [serveur] Server Running »
(Serveur en cours d’exécution) s’affiche à l’écran. Pendant l’exécution, les messages, de même
que les erreurs, sont affichés dans la fenêtre d’invite de commande. Cette fenêtre peut donc
servir au suivi d’InDesign Server.
Introduction à Adobe InDesign CS5 Server
13
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
Lancement d’InDesign Server pour une utilisation avec la technologie SOAP
Si votre flux de travail implique l’utilisation de scripts pour pouvoir fonctionner en interaction
avec InDesign Server, ce flux envoie très vraisemblablement des scripts à InDesign Server par
l’intermédiaire de la technologie SOAP. Pour communiquer avec InDesign Server par
l’intermédiaire de cette technologie, vous devez utiliser l’argument -port au lancement
d’InDesign Server. Dans l’exemple de ligne de commande suivant, le numéro de port « 12345 »
peut être remplacé par celui de votre choix.
InDesignServer -port 12345
Au lancement, InDesign Server doit afficher le message suivant :
"[soap] Servicing SOAP requests on port 12345."
Il indique qu’InDesign Server est prêt à accepter les requêtes SOAP.
Lancement d’InDesign Server pour une utilisation avec la technologie CORBA
Si votre flux de travail implique l’utilisation du langage Java pour pouvoir fonctionner en
interaction avec InDesign Server, vous devez lancer InDesign Server pour une utilisation avec
la technologie CORBA. L’API Java d’InDesign Server fait appel au module externe de prise en
charge de la technologie CORBA pour toute communication avec InDesign Server. L’utilisation
d’un fichier texte, dans lequel une chaîne représente une référence IOR d’identification unique
d’un objet dans CORBA, facilite la communication entre l’API et InDesign Server.
Une fois l’instance d’InDesign Server initialisée, la référence IOR est écrite pour l’objet Application
associé dans le fichier texte spécifié. En utilisant la référence IOR contenue dans le fichier IOR,
un client peut instancier un objet de proxy pour l’objet Application d’InDesign Server.
Pour lancer InDesign Server en vue d’une utilisation avec la technologie CORBA, ajoutez les
arguments -iorfile et -pluginpath à la ligne de commande. Le chemin spécifié par -pluginpath
dépend du chemin de l’application InDesign Server. Au lancement, InDesign Server crée le
fichier texte spécifié et écrit la référence IOR pour l’objet Application associé dans le fichier.
Vous devez pour cela disposer d’un droit d’accès en écriture au chemin de fichier. Dans
l’exemple de ligne de commande suivant, remplacez c:\ior.txt (Windows) ou ~/ior.txt (Mac OS)
par le chemin de fichier de votre choix.
Sous Windows :
InDesignServer -iorfile c:\ior.txt -pluginpath Server\Corba
Sous Mac OS :
InDesignServer -iorfile ~/ior.txt -pluginpath Server/Corba
Au lancement, InDesign Server doit afficher les messages suivants :
"[server] ApplicationIOR:..."
"[server] Writing IOR to ..."
Ils indiquent qu’InDesign Server est prêt à accepter les commandes CORBA et que vous
pouvez accéder à la référence IOR de l’objet Application d’InDesign Server à partir du fichier
spécifié.
14
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
Lancement à partir d’un autre programme ou d’un autre script
Vous pouvez lancer InDesign Server en tant que processus à partir d’un autre programme ou
d’un autre script. Sous Windows, InDesign Server est généralement exécuté à l’aide de
l’application InDesignServer.com et non d’InDesignServer.exe. La version avec l’extension .com
diffère de la version avec l’extension .exe en ce sens qu’elle configure les chemins requis vers le
dossier omniorb indispensable à l’implémentation CORBA d’InDesign Server. La version avec
l’extension .exe ne configure pas ces chemins. Vous risquez donc de devoir ajouter le dossier
omniorb à la variable d’environnement PATH pour pouvoir lancer cette application.
Exécution de plusieurs instances d’InDesign Server
Si votre site traite un volume important de requêtes InDesign Server, vous pouvez augmenter
votre débit en exécutant plusieurs instances d’InDesign Server sur un même système. En règle
générale, le nombre maximum d’instances d’InDesign Server exécutable sur un même
ordinateur correspond au nombre de cœurs de processeur de l’ordinateur plus un. Pour plus de
détails, voir la documentation intitulée Adobe InDesign Server CS5 Performance and Scalability
(Performances et évolutivité d’Adobe InDesign Server CS5) du kit SDK d’InDesign Server.
Pour exécuter plusieurs instances, vous devez attribuer à chacune un nom de configuration
unique. Pour ce faire, utilisez l’argument -configuration et indiquez un nom unique pour
chaque instance. Lorsque vous exécutez InDesign Server à partir d’une ligne de commande,
vous devez utiliser une fenêtre distincte pour chaque instance.
A partir d’une fenêtre d’invite de commande, lancez la première instance en exécutant la
commande suivante :
InDesignServer -configuration myIDS1
Ensuite, ouvrez une nouvelle fenêtre d’invite de commande et exécutez la commande suivante
pour la seconde instance :
InDesignServer -configuration myIDS2
Exécution de plusieurs instances pour une utilisation avec la
technologie SOAP
Si plusieurs de vos applications communiquent avec InDesign Server grâce à la technologie SOAP,
vous devez affecter à chaque instance d’InDesign Server un numéro de port différent. Dans les
exemples ci-dessous, il n’est pas nécessaire de spécifier l’argument -configuration. En effet,
InDesign Server crée un nom de configuration à partir du port spécifié (comme décrit à la section
« Arguments d’InDesign Server », page 11). Dans les exemples suivants, les noms de
configuration « configuration_18383 » et « configuration_18555 » sont créés.
Vous pouvez exécuter la première instance à l’aide de la ligne de commande suivante :
InDesignServer -port 18383
Vous pouvez ensuite exécuter une seconde instance à l’aide de la ligne de commande suivante :
InDesignServer -port 18555
Vous pouvez choisir d’attribuer ou non à chaque instance un nom de configuration unique.
Cependant, l’utilisation de SOAP requiert absolument un numéro de port unique. Par exemple :
InDesignServer -configuration myIDS3 -port 18777
Introduction à Adobe InDesign CS5 Server
15
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
Exécution de plusieurs instances pour une utilisation avec la
technologie CORBA
Si plusieurs de vos applications communiquent avec InDesign Server en utilisant la technologie
Java/CORBA, vous devez attribuer à chaque instance d’InDesign Server un fichier texte IOR et
un nom de configuration distincts. Dans les exemples suivants, des fichiers texte IOR et des
noms de configuration uniques sont créés pour chaque instance.
Sous Windows, vous pouvez exécuter la première instance à l’aide de la ligne de commande
suivante :
InDesignServer -configuration myIDS1 -iorfile c:\IDS\ior_1.txt
-pluginpath Server/Corba
Vous pouvez ensuite exécuter une seconde instance à l’aide de la ligne de commande suivante :
InDesignServer -configuration myIDS2 -iorfile c:\IDS\ior_2.txt
-pluginpath Server/Corba
Sous Mac OS, vous pouvez exécuter la première instance à l’aide de la ligne de commande
suivante :
InDesignServer -configuration myIDS1 -iorfile /IDS/ior_1.txt
-pluginpath Server/Corba
Vous pouvez ensuite exécuter une seconde instance à l’aide de la ligne de commande suivante :
InDesignServer -configuration myIDS2 -iorfile /IDS/ior_2.txt
-pluginpath Server/Corba
Fermeture d’InDesign Server
Il existe plusieurs façons de quitter InDesign Server :
z Appuyez sur Ctrl+C dans la fenêtre Invite de commandes (utilitaire Terminal sous
Mac OS), où InDesign Server a été lancé.
z Envoyez un script à InDesign Server lui commandant de s’arrêter à l’aide de l’événement de
fermeture de l’application. Par exemple, le script JavaScript suivant commande à
InDesignServer de s’arrêter sans enregistrer les documents ouverts :
app.quit(SaveOptions.no);
z
Si l’instance d’InDesign Server a été lancée à partir du service Windows InDesign Server,
vous pouvez interrompre le service et mettre ainsi fin à toutes les instances d’InDesign
Server lancées par le service.
Configuration du service Windows InDesign Server
Pour lancer, arrêter et configurer le service Windows InDesign Server, sélectionnez la catégorie
Services de la console de gestion standard de Microsoft. Pour lancer cette console, cliquez avec
le bouton droit de la souris sur Poste de travail > Gérer ou cliquez sur le menu Démarrer et
sélectionnez Outils d’administration > Gestion de l’ordinateur. Dans la fenêtre de gestion de
l’ordinateur, sélectionnez Services et applications, puis Services. Dans la liste de services,
cliquez deux fois sur InDesignServerService. La boîte de dialogue Propriétés s’affiche alors à
l’écran. Elle vous permet de lancer, d’arrêter ou d’interrompre momentanément le service, de
modifier l’ouverture de session ou le mode de démarrage du service.
16
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
Dans l’onglet Connexion, Microsoft recommande l’utilisation du paramètre le moins privilégié
permettant au service d’accomplir ses tâches. Dans ce cas, ces tâches incluent la lecture et
l’écriture dans le dossier Documents and Settings ainsi qu’à l’emplacement des documents
utilisés par le serveur, l’ouverture d’un port et la lecture des paramètres de registre. Loption
Compte système local est plus privilégiée que LocalService ; vous devez donc d’abord essayer
de définir l’option Ce compte sur LocalService (par exemple, NT AUTHORITY\LocalService).
Dans l’onglet Récupération, il est conseillé de laisser les paramètres définis sur Ne rien faire. Le
service est ainsi relancé en cas de défaillance. Si le service fonctionne correctement, les
instances d’InDesign Server associées à des ports/configurations spécifiés ont déjà été lancées.
En cas de défaillance du service, et si les instances d’InDesign Server continuent de
fonctionner, la nouvelle instance du service n’en sera pas informée et tentera de lancer de
nouvelles instances d’InDesign Server ; le lancement échouera, les ports/configurations tant
déjà utilisés. Ces paramètres n’affectent pas le traitement des instances d’InDesign Server par le
service en cas de défaillance ; cette tâche est configurée par l’intermédiaire des paramètres de
registre MaximumFailureCount, MaximumFailureIntervalInMinutes et TrackFailures dans
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InDesignCS5ServerWinSe
rvice.
Composant logiciel enfichable Management Console d’InDesign Server
Le second composant du service Windows est le composant logiciel enfichable Management
Console d’InDesign Server Pour ajouter le composant à une console de gestion, cliquez deux
fois sur le ficher InDesignServerService.msc de votre installation InDesign Server. Vous
pouvez également l’ajouter manuellement en exécutant l’application Windows mmc.exe et en
sélectionnant Fichier > Ajouter/Supprimer un composant logiciel enfichable. Une liste de tous
les composants logiciels enfichables MMC disponibles s’affiche alors. Si ce n’est pas le cas,
cliquez sur Ajouter. Sélectionnez InDesignCS5ServerService dans la liste pour l’ajouter à la
console active. Fermez la boîte de dialogue Ajouter/Supprimer un composant logiciel
enfichable.
Pour ajouter une instance InDesign Server à la console, cliquez avec le bouton droit de la souris
sur InDesignCS5ServerService dans le volet gauche de la console et sélectionnez Nouveau >
Nouvelle instance InDesign Server. La nouvelle instance hérite des paramètres d’échec de la
dernière instance. Un numéro de port lui est attribué, correspondant au numéro de port le plus
élevé des instances InDesignCS5ServerService existantes plus un. La ligne de commande par
défaut est vide. Pour modifier la configuration d’une instance (numéro de port ou ligne de
commande), cliquez deux fois sur l’instance dans le volet droit. La ligne de commande doit
suivre le schéma indiqué à la section « Lancement d’InDesign Server à partir de la ligne de
commande », page 13, à l’exception de l’argument -port qui est défini par l’entrée de port et qui
ne doit donc pas être utilisé.
Pour que plusieurs instances d’InDesign Server puissent coexister sur un même ordinateur,
chacune doit être associée à un port ou à un nom de configuration unique ; vous devez pour
cela modifier les paramètres du service relatifs au port et à la ligne de commande. Bien que
d’ordinaire seuls le port et les paramètres de ligne de commande aient besoin d’être modifiés,
d’autres paramètres peuvent être modifiés à partir des paramètres de registre de l’instance du
service. Ces paramètres sont les suivants :
Introduction à Adobe InDesign CS5 Server
17
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
z
MaximumFailureCount : nombre de tentatives de redémarrage d’une instance en cas
d’échec.
z
MaximumFailureIntervalInMinutes : temps alloué à MaximumFailureCount, en minute.
InDesign Server
doit
échouer
plus
de
MaximumFailureCount
fois
en
MaximumFailureIntervalInMinutes pour que le service interrompe les tentatives de
redémarrage.
z
TrackFailures : il s’agit d’une valeur booléenne. Si cette valeur est égale à 1 (valeur par défaut),
le service tente de relancer InDesign Server ; si elle est égale à 0, le service ne fait rien.
Pour modifier les paramètres, exécutez regedit et passez en revue les clés dans
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InDesignCS5ServerWinSe
rvice. Un ensemble de clés (par exemple, 065c361a-0cbe-4917-bf15-5276b1815769) doit être
associé à chaque instance configurée à l’aide d’InDesignServerService.msc ou du composant
logiciel enfichable Console Management.
Configuration d’un démon launchd InDesign Server pour Mac OS
InDesign Server peut être lancé en tâche de fond (démon) sous Mac OS, sans devoir être
contrôlé directement par l’utilisateur final. L’exécution d’InDesign Server en tant que démon
vous permet de configurer le lancement de l’application au démarrage du système
d’exploitation et de définir des options de redémarrage en cas de défaillance.
Pour configurer le démon, créez un fichier de configuration de liste de propriétés (plist)
contenant les paramètres souhaités et installez-le dans le dossier LaunchAgents ou
LaunchDaemons, selon votre choix.
Fichier de configuration launchd
Pour créer un fichier de configuration launchd, saisissez le contenu XML dans un éditeur de
texte, comme spécifié ci-dessous. Enregistrez le fichier en utilisant le nom du démon comme
nom de fichier et .plist comme extension (par exemple, com.adobe.ids.launchd.12345.plist).
Vous pouvez également modifier un fichier plist dans l’utilitaire XCode Property List Editor,
situé sous Développeur/Applications/Utilitaires.
Le Tableau 2 présente les paramètres requis pour un démon launchd InDesign Server. Pour
obtenir la liste complète des options launchd, voir la page du manuel sur launchd.
18
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
TABLEAU 2 Paramètres du démon InDesign Server
Label
Identifiant unique de votre démon (par exemple,
com.adobe.ids.launchd.12345).
OnDemand
Ce paramètre doit être défini sur false pour qu’InDesign Server
redémarre après une fermeture ou une défaillance.
ProgramArguments
Série de chaînes représentant les arguments utilisés au
lancement de l’application. Le chemin complet vers l’application
constitue le premier élément de la série. Les arguments utilisés
au lancement d’InDesign Server à partir de la ligne de
commande constituent le reste des éléments.
Pour recevoir les sorties de la console à partir
d’InDesign Server, vous devez utiliser l’argument
-LogToApplicationEventLog.
RunAtLoad
Ce paramètre est défini sur true. InDesign Server est lancé une
fois le démon chargé, au démarrage du système ou
manuellement à l’aide de launchctl.
EXEMPLE 1 Format xml du fichier plist
Les lignes suivantes représentent le contenu XML d’un fichier de configuration plist qui
exécute InDesign Server avec le port SOAP 12345 :
<?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 Server/InDesignServer</string>
<string>-port</string>
<string>12345</string>
<string>-LogToApplicationEventLog</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Introduction à Adobe InDesign CS5 Server
19
Introduction à Adobe InDesign CS5 Server
Exécution d’InDesign Server
Installation du fichier de configuration
Pour installer un fichier de configuration launchd, il vous suffit de le copier dans le dossier
approprié de l’ordinateur où InDesign Server sera exécuté. Vous pouvez disposer de plusieurs
fichiers de configuration de démon, un pour chaque instance d’InDesign Server à exécuter.
Pour une installation type d’InDesign Server, exécutez Mac OS X Server sans comptes
utilisateur. Dans ce cas, copiez le fichier de configuration à l’emplacement suivant :
/Library/LauchDaemons
Pour exécuter InDesign Server à l’aide d’un compte utilisateur, copiez le fichier plist dans le
dossier LaunchAgents, lui même placé dans le dossier système ou utilisateur Bibliothèque
(vous devrez peut-être créer le dossier utilisateur LaunchAgents) :
/Library/LaunchAgents
/Users/<nom d’utilisateur>/Library/LaunchAgents
Chargement du démon
Une fois le fichier plist copié dans le dossier de lancement, redémarrez le système pour qu’il
charge le démon automatiquement. Une fois le démon chargé, InDesign Server est lancé à laide
des paramètres spécifiés dans le fichier plist. Pour confirmer le chargement du démon, utilisez
la commande suivante dans la fenêtre de l’utilitaire Terminal :
launchctl list
Si l’identifiant apparaît, cela signifie que le démon a été chargé correctement.
Pour confirmer qu’InDesign Server est en cours d’exécution, vous pouvez utiliser le Moniteur
d’activité, qui affiche tous les processus actifs.
Vous pouvez charger manuellement le démon à l’aide de la commande launchctl :
launchctl load /Library/LaunchDaemons/com.adobe.ids.launchd.12345.plist
Déchargement du démon
Vous pouvez décharger le démon manuellement à l’aide de launchctl ; cette action n’entraîne
cependant pas la fermeture de l’instance d’InDesign Server :
launchctl unload /Library/LaunchDaemons/com.adobe.ids.launchd.12345.plist
Pour quitter l’instance d’InDesign Server, envoyez à InDesign Server un script lui commandant
de s’arrêter ou utilisez le Moniteur d’activité pour fermer le processus.
20
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie SOAP
Communication avec InDesign Server basée sur la
technologie SOAP
InDesign Server prend en charge RunScript, une commande SOAP qui vous permet d’exécuter
un script InDesign Server. Vous pouvez écrire votre script en JavaScript, en VBScript
(Windows uniquement) ou en AppleScript (Mac OS uniquement). Lorsque vous appelez la
commande RunScript, celle-ci transfère votre fichier de script dans InDesign Server, qui
exécute ensuite le script de manière interne.
La commande RunScript est définie par le WSDL d’InDesign Server. Vous pouvez l’utiliser avec
des outils SOAP standard pour générer automatiquement des paquets de messages. Il existe
deux façons d’afficher le WSDL :
z
Ouvrez le fichier IDSP.wsdl dans le kit SDK d’InDesign Server.
z
Accédez au WSDL en utilisant le protocole HTTP après avoir lancé InDesign Server à l’aide
de l’argument -port (par exemple, http://localhost:12345/service?wsdl).
Pour plus de détails sur l’écriture d’une application SOAP client fonctionnant en interaction
avec InDesign Server, voir la documentation intitulée Working with Adobe InDesign CS5 Server
SOAP (Utilisation de la technologie SOAP d’Adobe InDesign CS5 Server) ou l’un des exemples
sampleclient du kit SDK.
Utilisation de sampleclient pour exécuter un script InDesign Server
InDesign Server comprend un exemple d’application SOAP client, sampleclient. Il s’agit d’une
application de ligne de commande qui envoie un script à InDesign Server par l’intermédiaire
de RunScript, la commande SOAP d’InDesign Server. Le script peut être écrit dans les langages
JavaScript, AppleScript ou VBScript. Pour SampleClient, l’extension AppleScript
est .applescript et l’extension VBScript, .vbs. Toute autre extension est associée à JavaScript.
Le kit SDK des produits InDesign contient les composants nécessaires à l’élaboration de
sampleclient. Le fichier de projet se trouve sous <SDK>/build/<plate-forme>/prj et le code
source sous <SDK>/source/public/components/server/sampleclient.
Arguments de ligne de commande de sampleclient
Les arguments de sampleclient permettent d’identifier le système sous lequel InDesign Server
est en cours d’exécution, le port configuré pour accepter une communication SOAP, le nom du
fichier de script que vous voulez exécuter, ainsi que des arguments destinés au script. La
syntaxe de sampleclient respecte le schéma suivant ; chaque argument est décrit dans le tableau
suivant :
sampleclient [-host hostID:port] [-server] scriptPath [arguments]
[-repeat nombre_de_répétitions] [-h]
Introduction à Adobe InDesign CS5 Server
21
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie SOAP
TABLEAU 3 Arguments de ligne de commande de sampleclient
Argument
Description
arguments
Facultatif. Cet argument désigne un ou plusieurs couples nom-valeur utilisés lors du transfert des
arguments au script. Ces couples se présentent sous la forme argname=value, argname
correspondant au nom de l’argument lu par le script et value étant sa valeur. Il convient de séparer
différents arguments par des espaces. Par exemple :
sampleclient -host localhost:18383 /myScript.jsx myArg="hello world"
Les scripts peuvent lire la valeur de l’argument en utilisant la méthode GET de l’objet scriptArgs
figurant dans l’objet Application. Par exemple, la commande suivante récupère l’argument appelé
myArg :
myArg = app.scriptArgs.get("myArg");
-h
Facultatif. Cet argument affiche une courte description de ces arguments.
-host
hostID:port
Facultatif. Cet argument identifie l’hôte sur lequel InDesign Server est en cours d’exécution. hostID
peut être l’un des identifiants suivants : l’adresse IP du système, le nom d’hôte du système (par
exemple, notrehôte.corp.entreprise.com) ou le mot clé « localhost » si InDesignServer est
actuellement en cours d’exécution sur le même ordinateur que l’application sampleclient.
Les adresses IPv4 et IPv6 sont toutes deux acceptées. port désigne le numéro de port de l’hôte
configuré pour accepter des messages SOAP. Par exemple :
-host 10.0.0.1:18383
-host [fe80::405:2345:fe56:8901]:18383
Sur un système local :
-host localhost:18300
-repeat
22
Facultatif. Cet argument indique le nombre d’exécutions du script.
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie SOAP
Argument
Description
scriptPath
Facultatif. Si l’argument -server n’est pas utilisé, scriptPath est le chemin conduisant au fichier de
script du système de fichiers local. Il peut s’agir d’un chemin absolu ou relatif, selon le répertoire de
travail actif. Si l’argument -server est utilisé, scriptPath peut prendre l’une des deux formes. Tout
d’abord, scriptPath peut être un chemin absolu vers le script basé sur le système de fichiers de
l’instance d’InDesign Server ciblée. Sous Windows :
C:\<MonDossierDeScripts>\myScript.jsx
Sous Mac OS :
~/<MonDossierDeScripts>/myScript.jsx
Ensuite, scriptpath peut reposer sur une constante de chemin prédéfinie. InDesign Server définit
deux constantes de chemin, Scripts:Application et Script:User. Scripts:Application représente le
dossier de scripts de l’application. Il se trouve à l’emplacement suivant : Sous Windows :
C:\Program Files\Adobe\Adobe InDesign CS5 Server\Scripts\
Sous Mac OS :
/Applications/Adobe InDesign CS5 Server/Scripts/
Scripts:User représente le dossier de scripts de l’utilisateur. Il se trouve à l’emplacement suivant :
Sous Windows :
C:\Documents and Settings\<nom d’utilisateur>\Application
Data\Adobe\InDesign
Server\<version>\<langue>\configuration_12345\Scripts\
Sous Windows Vista et Windows Server 2008 :
C:\Users\<nom
d’utilisateur>\AppData\Roaming\Adobe\<version>\<langue>\configuratio
n_12345\Scripts\
Sous Mac OS :
/Users/<nom d’utilisateur>/Library/Preferences/Adobe InDesign
Server/<version>/<langue>/configuration_12345/Scripts
Placez votre fichier dans l’un des dossiers de scripts de l’ordinateur sur lequel InDesign Server est
exécuté, puis transférez le chemin correspondant à sampleclient. Par exemple (notez que vous
devez utiliser le séparateur deux-points (:) sous Windows et Mac OS) :
Scripts:Application:myScript.jsx
Scripts:User:myScript.jsx
-server
Facultatif. Si ce mot clé est spécifié, scriptPath représente un fichier situé sur l’ordinateur sur lequel
est exécuté InDesign Server. Si tel n’est pas le cas, scriptPath représente un fichier situé sur
l’ordinateur local, sur lequel est exécutée l’application SampleClient.
Introduction à Adobe InDesign CS5 Server
23
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie Java
Lancement de SampleClient
1. Pour lancer SampleClient, un fichier de script exécutable par InDesign Server est requis. Vous
pouvez utiliser l’un des exemples de scripts du kit SDK d’InDesign Server ou écrire votre
propre script à l’aide de l’API fournie à cet effet avec InDesign. Si vous choisissez d’écrire votre
script, gardez à l’esprit qu’InDesign Server n’est doté d’aucune interface utilisateur. Assurezvous bien que votre script ne repose pas sur des composants d’interface utilisateur.
2. Lancez InDesign Server pour une utilisation avec la technologie SOAP. Pour plus de détails, voir
la section « Lancement d’InDesign Server pour une utilisation avec la technologie SOAP »,
page 14. Notez l’hôte ainsi que le port sur lesquels InDesign Server est lancé.
3. Ouvrez une nouvelle fenêtre de ligne de commande (sous Windows, utilisez l’Invite de
commandes ; sous Mac OS, utilisez l’utilitaire Terminal).
4. Spécifiez les répertoires contenant SampleClient :
Sous Windows :
cd "c:\Program Files\Adobe\Adobe InDesign CS5 Server"
Sous Mac OS :
cd '/Applications/Adobe/Adobe InDesign CS5 Server'
5. Exécutez la commande SampleClient contenant l’hôte, le port et le chemin d’accès au script
appropriés. Reportez-vous aux exemples suivants :
Si InDesign Server est exécuté localement :
sampleclient -host localhost:18383 VotreCheminDeScript
Si InDesign Server est exécuté sur un autre système :
sampleclient -host 192.168.1.100:18383 VotreCheminDeScript
6. sampleclient affiche les messages et la valeur renvoyée pour le script dans la fenêtre de ligne
de commande, que vous pouvez utiliser à des fins de suivi.
Communication avec InDesign Server basée sur la
technologie Java
InDesign Server est équipé d’une API Java, qui expose le modèle DOM (Document Object
Model, modèle objet de documents) de création de scripts d’InDesign Server. La
communication entre l’API Java et ce modèle est facilitée par la technologie CORBA. Lorsque
vous exécutez votre code Java, l’API Java invoque l’API CORBA. Celle-ci transmet alors des
commandes au code C++ d’InDesign Server, qui expose le modèle DOM de création de scripts.
L’API Java d’InDesign Server est distribuée dans le kit SDK d’InDesign Server, sous forme de
fichier JAR. Ce fichier JAR est indispensable à la compilation et à l’exécution du codeJava
d’InDesign Server. Bien que l’API soit basée sur la technologie CORBA, elle s’adresse
clairement à des utilisateurs de Java.
Pour plus de détails sur la manière d’écrire un composant Java fonctionnant en interaction avec
InDesign Server, voir la documentation intitulée Working with Adobe InDesign CS5 Server Java
(Utilisation de la technologie Java d’Adobe InDesign CS5 Server).
24
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie Java
Ecriture d’un composant Java
Pour accéder à InDesign Server par le biais de CORBA, vous devez tout d’abord écrire un
composant Java à l’aide de l’API Java fournie avec InDesign Server. Cette dernière offre un accès
illimité au modèle DOM de création de scripts d’InDesign Server, dont chacun des composants
est représenté en tant que classe Java. Ces classes sont ensuite rassemblées dans le fichier
InDesignServerAPI.jar.
Le kit SDK d’InDesign Server contient le fichier JAR de l’API Java d’InDesign Server (<IDS
SDK>/lib/InDesignServerAPI.jar) ainsi que de nombreux exemples de code Java (<IDS
SDK>/samples/snippets) illustrant l’utilisation de l’API Java d’InDesign Server. La
documentation intitulée Working with Adobe InDesign CS5 Server Java (Utilisation de la
technologie Java d’Adobe InDesign CS5 Server) explique comment les compiler et les exécuter.
Exécution d’une application Java d’InDesign Server
Il existe plusieurs façons de lancer une application Java pour InDesign Server, y compris
l’outil java de la ligne de commande, une application de lancement Java et une page Web
contenant un applet Java. La méthode présentée ci-dessous repose sur la ligne de commande :
1. Lancez InDesign Server et assurez-vous qu’il est configuré pour accepter des commandes
CORBA. Pour plus de détails, voir la section « Lancement d’InDesign Server pour une
utilisation avec la technologie CORBA », page 14. Veillez à noter le chemin d’accès au
fichier IOR utilisé par votre instance d’InDesign Server.
2. Ouvrez une nouvelle fenêtre de ligne de commande (sous Windows, utilisez l’Invite de
commandes ; sous Mac OS, utilisez l’utilitaire Terminal).
3. Utilisez l’outil java de la ligne de commande pour exécuter votre code. L’argument -classpath
ajoute le ou les fichiers .jar et/ou les répertoires indiqués à la variable d’environnement
classpath. Cette variable représente l’emplacement dans lequel l’environnement d’exécution
Java (JRE, Java Runtime Environment) recherche la classe invoquée. Le second argument
correspond au nom de la classe dont vous voulez exécuter la méthode main(). Si cette classe
fait partie d’un package, ajoutez le package au début du nom de la classe. Dans l’exemple cidessous, le package est com.adobe.ids.sdk. Le troisième argument, ior.txt, correspond à un
argument de la méthode main() invoquée. Ici, il s’agit du chemin du fichier IOR utilisé par
InDesignServer.
java -classpath "..\lib\InDesignServerAPI.jar;..\lib\samples.jar"
com.adobe.ids.sdk.mySampleClass "ior.txt"
Introduction à Adobe InDesign CS5 Server
25
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server par le biais d’un module externe
Communication avec InDesign Server par le biais d’un
module externe
Le développement d’un module externe pour InDesign requiert certaines compétences
fondamentales en matière de conception et de programmation en langage C++ orientée objet.
Ces compétences sont également nécessaires au développement d’un module externe pour
InDesign Server. InDesign Server ne disposant d’aucune interface utilisateur, contrairement à
la version de bureau, bon nombre de points spécifiques sont à prendre en compte lors de la
création d’un nouveau module externe ou lors de l’adaptation d’un module externe existant
pour une utilisation sous InDesign Server.
La documentation intitulée Adobe InDesign CS5 Server Plug-in Techniques (Techniques de
création de modules externes pour Adobe InDesign CS5 Server) explique comment écrire des
modules externes pour une exécution en toute sécurité dans l’environnement d’InDesign
Server. Ce document explique également comment créer des modules externes de 64 bits.
Pour charger et exécuter votre module externe sous InDesign Server 64 bits, vous devez le
convertir à la version 64 bits. Vous pouvez exécuter votre module externe 32 bits sur un
ordinateur 64 bits en exécutant la version 32 bits d’InDesign CS5 Server. Les applications
32 bits peuvent être exécutées sur des plates-formes 64 bits en mode d’émulation appelé
WOW64 (Win32 On Win64) ; en revanche, les applications 64 bits ne peuvent pas être
exécutées sur des plates-formes 32 bits.
Pour permettre l’interaction entre InDesign Server et votre module externe par le biais de
scripts ou de composants Java, ce dernier doit prendre en charge les scripts. Pour plus de
détails, voir le chapitre « Scriptable Plug-in Fundamentals » (Principes fondamentaux du
module externe pour scripts) de la documentation Adobe InDesign CS5 Programming Guide
(Guide de programmation Adobe InDesign CS5) ; vous y trouverez la méthode à suivre pour
exposer l’API de votre module externe à l’aide du modèle DOM de création de scripts.
Pour pouvoir accéder à votre module externe à partir d’un composant Java, vous devez
également régénérer le fichier InDesignServerAPI.jar ainsi que le fichier du module externe de
prise en charge de la technologie Corba d’InDesign Server. La régénération de ces fichiers
permet d’ajouter les fonctions de votre module externe à ces composants. Pour plus de détails
sur le processus de régénération des fichiers JAR de l’API Java et du module externe de prise en
charge de la technologie CORBA, voir la documentation intitulée Regenerating the Adobe
InDesign CS5 Server Java API (Régénération de l’API Java d’Adobe InDesign CS5 Server).
Veuillez noter que le kit SDK d’InDesign Server ne fournit qu’une seule version du fichier
InDesignServerAPI.jar, qui fonctionne avec les versions 64 bits et 32 bits d’InDesign Server.
26
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie COM (Windows uniquement)
Communication avec InDesign Server basée sur la
technologie COM (Windows uniquement)
InDesign Server publie une bibliothèque de types à utiliser pour créer des composants COM
qui interagissent avec InDesign Server. La bibliothèque de types contient des définitions des
classes, méthodes et constantes du modèle DOM de création de scripts d’InDesign Server.
Le fonctionnement d’InDesign Server repose sur l’utilisation de modules externes ; son modèle
DOM de création de scripts change donc selon les modules externes disponibles au démarrage.
La bibliothèque de types d’InDesign Server est créée ou mise à jour au démarrage, et stockée sur
le disque dur local. Le fichier .tlb alors généré est enregistré dans le dossier Application Data :
C:\Documents and Settings\All Users\Application Data\Adobe\InDesign
Server\<version>\<langue>\configuration_12345\Scripting Support\<version>\Resources
for Visual Basic.tlb
(ou sous Windows Vista et Windows Server 2008) :
C:\ProgramData\Adobe\InDesign
Server\<version>\<langue>\configuration_12345\Scripting Support\<version>\Resources
for Visual Basic.tlb
Dans le chemin ci-dessus, « configuration_12345 » est le nom de configuration de l’instance
d’InDesign Server à l’origine du fichier table.
La bibliothèque de types COM d’InDesign Server est faiblement typée, à l’instar du modèle de
création de scripts d’InDesign Server sur lequel elle repose. Lorsque vous choisissez un langage
pour développer votre composant COM, n’oubliez pas que moins le langage est typé, plus il est
compatible avec la bibliothèque de types COM d’InDesign Server.
Visual Basic
Visual Basic 6 est la solution optimale pour créer un composant COM InDesign Server. La dernière
version de Visual Basic inclut des constructions fortement typées, qui la rendent moins compatible
avec le modèle DOM faiblement typé d’InDesign.
Si vous utilisez Visual Basic .NET, vous devez désactiver les options de compilation de projet
« Option explicit » et « Option strict ». Ces paramètres vous permettent de réduire les règles de
typage fort de VB.NET. Vous devez également éviter de déclarer des variables à l’aide de Dim,
qui force le type de la variable. La complétion de code ne fonctionnant que si une variable est
déclarée à l’aide de Dim, vous pouvez le plus souvent déclarer votre variable en haut de la
méthode à l’aide de Dim, puis remplacer les instructions Dim par des instructions REM avant
l’exécution de votre code.
Pour intégrer la bibliothèque de types COM d’InDesign Server à votre projet, vous devez avoir
accès à la DLL interop d’InDesign Server. Sous .NET, vous devez créer une référence au
fichier .tlb. Cliquez avec le bouton droit de la souris sur votre projet et sélectionnez Ajouter une
référence. Choisissez ensuite l’onglet COM et localisez la bibliothèque de types d’Adobe
InDesign CS5 Server. Si elle n’apparaît pas dans la boîte de dialogue, vous devez d’abord lancer
InDesign Server, qui crée alors la bibliothèque de types.
Introduction à Adobe InDesign CS5 Server
27
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie COM (Windows uniquement)
Pour créer une référence à une instance d’InDesign Server dans votre code, utilisez la méthode
CreateObject. Notez que cette méthode ne vous permet pas de déterminer l’instance
d’InDesign Server ciblée par le script.
Set myApp = CreateObject("InDesignServer.Application")
Pour créer une référence à une instance spécifique d’InDesign Server dans votre code, utilisez
la méthode GetObject, en indiquant le nom de configuration de l’instance d’InDesign Server
que vous souhaitez cibler :
Set myApp = GetObject("configuration_12345")
Vous trouverez des détails et des exemples supplémentaires dans le dossier <IDS
SDK>/samples/ ainsi que dans la documentation intitulée Guide des scripts d’Adobe
InDesign CS5.
C#
L’utilisation du langage C# pour créer des composants COM InDesign Server est déconseillée.
C# est un langage fortement typé, et à ce titre il entraîne de nombreux conflits avec le modle
DOM de création de scripts d’InDesign Server faiblement typé. Il est néanmoins possible de
créer des composants COM InDesign Server simples au moyen d’une conversion de type et
d’un paramétrage minutieux.
Vous pouvez notamment créer un code C# qui invoque la méthode doScript d’InDesign Server,
en indiquant un fichier de script ou le texte d’un script. Voir l’exemple sampleclient-csharpcom du kit SDK d’InDesign Server.
En essayant de créer un composant plus impliqué à l’aide de C#, vous risquez d’être confronté
aux difficultés suivantes :
z
C# est un langage fortement typé, qui doit toujours connaître le type d’un objet. Vous devez
donc convertir le type de presque tous les objets récupérés à partir du modèle DOM de
création de scripts. Cela ne pose pas de problème si vous êtes sûr du type de votre objet ;
cependant, de nombreuses méthodes du modèle DOM de création de scripts acceptent ou
renvoient des types de variable, et il n’est pas toujours possible de savoir quel type sera renvoyé.
z
Vous devez spécifier tous les paramètres des méthodes, même s’ils sont facultatifs dans le
modèle DOM de création de scripts. Le paramètre null n’est pas accepté ; les paramètres
doivent être des objets entièrement formés.
z
Les paramètres facultatifs sont parfois impossibles à traiter. Par exemple, il se peut qu’une
méthode du modèle DOM de création de scripts ne vous permette pas de transférer le
premier paramètre d’une méthode, auquel cas InDesign Server tient compte du deuxième
paramètre, ce qui est impossible sous C#.
Pour créer une référence à une instance d’InDesign Server à l’aide du langage C#, utilisez la
méthode InteropServices Marshal.BindToMoniker :
myApp = (InDesignServer.Application)
(System.Runtime.InteropServices.Marshal.BindToMoniker("configuration_12345"));
Vous trouverez des détails et des exemples supplémentaires dans le dossier Samples du kit SDK
d’InDesign Server.
28
Introduction à Adobe InDesign CS5 Server
Communication avec InDesign Server basée sur la technologie LBQ
Communication avec InDesign Server basée sur la
technologie LBQ
InDesign Server est doté d’un composant appelé LBQ qui permet de mettre les travaux en file
d’attente et d’équilibrer les charges dans InDesign Server. Ce composant est totalement
optionnel et secondaire pour l’exécution d’InDesign Server. Ce composant regroupe dans une
solution unique des fonctions d’équilibrage des charges et de mise en attente des travaux.
L’équilibrage des charges peut s’opérer sur plusieurs instance d’InDesign Server exécutées sur
un ou plusieurs ordinateurs. Pour communiquer avec les instances d’InDesign Server, LBQ
utilise JAVA et CORBA. Il est donc impératif que chaque instance soit démarrée comme
indiqué à la section Lancement d’InDesign Server pour une utilisation avec la technologie
CORBA.
Outre l’équilibrage des charges et la mise en file d’attente, LBQ prend en charge les fonctions
suivantes :
z
Traitement des priorités dans les files d’attente
z
Affichage de l’état
z
Journalisation
z
Création de plusieurs files d’attente
z
Modification des travaux placés dans une file d’attente
Interaction des clients avec LBQ à l’aide de l’API RESTful. Les appels de l’API RESTful sont
passés via une requête URL. Lors de l’exécution d’une requête, une réponse XML est renvoyée.
LBQ prend en charge les opérations suivantes :
z
EnqueueJob
z
ModifyJob
z
CancelJob
z
StartQueue
z
StopQueue
z
ReinitializeQueue
z
GetVersion
z
JobStatus
z
QueueStatus
z
IDSStatus
Voir la documentation intitulée Working With Load Balancing and Queueing For Adobe
InDesign CS5 Server (Utilisation des fonctions d’équilibrage des charge et de mise en file
d’attente pour Adobe InDesign CS5 Server) pour obtenir de plus amples informations sur
l’utilisation de LBQ.
Introduction à Adobe InDesign CS5 Server
29
Introduction à Adobe InDesign CS5 Server
Gestion des messages d’erreur
Gestion des messages d’erreur
InDesign Server consigne les messages et erreurs dans stderr et stdout. Ces messages et erreurs
peuvent être capturés ou redirigés.
Accès aux erreurs et messages
Pour accéder aux erreurs et aux messages à partir d’un module externe, utilisez les classes
MessageLog et/ou ErrorList des API C++. Pour plus de détails, voir la documentation intitulée
Adobe InDesign CS5 Server Plug-in Techniques (Techniques de création de modules externes
pour Adobe InDesign CS5 Server).
A partir de l’API Java, vous pouvez utiliser les objets ErrorListError figurant dans l’objet
Application.
Redirection des erreurs et messages
Lors de l’exécution d’InDesign Server à partir d’une application, vous pouvez configurer stdout
et stderr pour qu’ils redirigent les messages depuis InDesign Server vers votre application.
Sous Windows, il est possible de rediriger les messages InDesign Server vers le journal
d’événements d’applications de Windows. Pour ce faire, il suffit de lancer InDesign Server avec
l’argument -LogToApplicationEventLog. Lors de l’exécution d’InDesign Server à partir du
service Windows InDesign Server, les messages consignés sont automatiquement redirigés vers
le journal d’événements. Pour le visualiser, vous pouvez utiliser l’observateur d’événements
standard, accessible depuis le Panneau de configuration de l’outil Gestion de l’ordinateur.
Sous Mac OS, vous pouvez rediriger les messages vers la console système en lançant
InDesign Server à l’aide de l’argument -LogToApplicationEventLog. Le journal peut être
consulté dans l’utilitaire Console.
Etapes suivantes
Maintenant que vous savez comment exécuter InDesign Server et utiliser l’application SOAP
ou un composant Java pour exécuter un exemple fourni dans le kit SDK, nous allons aborder la
question de l’extension des fonctionnalités d’InDesign Server. Pour étendre les fonctionnalités
d’InDesign Server, plusieurs possibilités s’offrent à vous : écrire des scripts, programmer des
modules externes ou des applications qui permettent d’intégrer InDesign à un flux de travail
éditorial.
30
Introduction à Adobe InDesign CS5 Server
Etapes suivantes
Création de scripts, modules externes et composants Java pour
InDesign Server
Pour plus de détails sur l’écriture de scripts, de modules externes et de composants Java
InDesign et InDesign Server, installez le kit SDK des produits InDesign ainsi que celui
d’InDesign Server, puis reportez-vous à la documentation suivante :
z
Adobe InDesign CS5 Server Performance and Scalability (Performances et évolutivité
d’Adobe InDesign CS5 Server) : vous trouverez dans ce document des références et
informations sur la configuration de votre système ainsi que sur l’optimisation des
performances et de l’évolutivité d’InDesign Server.
z
Adobe InDesign CS5 Programming Guide (Guide de programmation Adobe InDesign CS5) :
vous trouverez dans ce document des informations sur la création de modules
externes C++ pour InDesign Server.
z
Guide des scripts d’Adobe InDesign CS5 : vous trouverez dans ce document des informations
de base sur la création de scripts pour InDesign, ainsi que de nombreux exemples. Il existe
trois versions de ce document : une version consacrée à AppleScript, une autre consacrée à
JavaScript et une troisième consacrée à VBScript.
z
Adobe InDesign CS5 Server Java API Reference (Guide de référence sur l’API Java d’Adobe
InDesign CS5 Server) : ce document est une référence javadoc de l’API Java d’InDesign
Server.
z
Adobe InDesign CS5 Server Plug-in Techniques (Techniques de création de modules externes
pour Adobe InDesign CS5 Server)
z
Regenerating the Adobe InDesign CS5 Server Java API(Régénération de l’API Java d’Adobe
InDesign CS5 Server)
z
Working with Adobe CS5 InDesign Server Java (Utilisation de la technologie Java d’Adobe
InDesign CS5 Server)
z
Working with Adobe CS5 InDesign Server SOAP (Utilisation de la technologie SOAP
d’Adobe InDesign CS5 Server)
z
Adobe Scripting, McWilliams Chandler. New York: Wiley Publishing Inc., 2003.
ISBN 0-7645-2455-0.
JavaScript
Pour plus d’informations sur le langage JavaScript et une description de son utilisation, voir les
documents suivants :
z
JavaScript: The Definitive Guide, 4th Edition, Flanagan, David. O’Reilly, 2001.
ISBN 0-596-00048-0.
z
JavaScript Bible. 5th Edition, Danny Goodman & Michael Morrison. John Wiley and Sons,
1998. ISBN 0-7645-57432.
z
JavaScript Programmer’s Reference, Cliff Wooton. Wrox, 2001. ISBN 1-861004-59-1.
Introduction à Adobe InDesign CS5 Server
31
Introduction à Adobe InDesign CS5 Server
Forum aux questions
SOAP
Pour plus de détails sur le protocole de communication SOAP, voir l’initiation SOAP de W3C,
disponible à l’adresse suivante : http://www.w3.org/TR/soap12-part0/ (en anglais).
Java
Pour plus d’informations sur le langage Java et une description de son utilisation, voir les
documents suivants :
z
Java in a Nutshell, 5th edition, David Flanagan. O’Reilly Media, 2005. ISBN 0-596-00773-6
z
http://java.sun.com
CORBA
Pour plus d’information sur la technologie CORBA et une description de son utilisation,
consulter les sites Web suivants :
z
http://www.omg.org/gettingstarted/corbafaq.htm (en anglais)
z
http://omniorb.sourceforge.net/ : vous trouverez sur ce site (en anglais) des informations
sur l’implémentation ORB utilisée par InDesign Server, OmniORB.
Forum aux questions
Puis-je spécifier un port SOAP et un fichier IOR lors du lancement du
serveur ?
Oui. InDesign Server peut gérer les commandes SOAP et CORBA simultanément ; vous
risquez cependant de constater une baisse des performances.
Existe-t-il un index de tous les objets et méthodes figurant dans l’API Java
d’InDesign Server ?
Oui. Vous trouverez dans le kit SDK d’InDesign Server un manuel de référence sur l’API Java.
Existe-t-il un index de toutes classes et méthodes figurant dans le modèle
DOM de création de scripts d’InDesign Server ?
Oui. Une référence de modèles d’objet pour InDesign Server est accessible à partir du menu
d’aide d’Adobe ExtendScript Toolkit CS5.
32
Introduction à Adobe InDesign CS5 Server
Forum aux questions
Comment puis-je invoquer mon module externe depuis l’API Java
d’InDesign Server ?
Vous devez régénérer le fichier InDesignServerAPI.jar et le module externe de prise en charge
de la technologie Corba. Pour plus d’informations à ce sujet, voir la documentation intitulée
Regenerating the Adobe InDesign CS5 Server Java API (Régénération de l’API Java d’Adobe
InDesign CS5 Server), incluse dans le kit SDK d’InDesign Server.
Puis-je interagir avec InDesign Server si je n’utilise ni SOAP ni CORBA ?
Oui. Il n’est pas indispensable d’utiliser SOAP ou CORBA. Vous pouvez utiliser des scripts
AppleScript, des scripts VBScript ou la technologie COM pour communiquer avec InDesign Server.
Comment renvoyer une valeur de mon script à mon application SOAP client ?
Dans les langages JavaScript et AppleScript, la valeur renvoyée est la dernière rencontrée dans
le script. Dans le langage VBScript, pour définir cette valeur pour le script, vous devez définir
une variable appelée returnValue. Chacun des exemples suivants renvoie le nom du document
au premier index.
JavaScript :
var documentName = app.documents.item(0).name;
documentName;
AppleScript :
tell application "InDesignServer"
set documentName to name of document 1
end tell
documentName
VBScript :
Set myApp = CreateObject("InDesignServer.Application.CS5")
documentName = myApp.Documents.Item(1).Name
returnValue = documentName
Introduction à Adobe InDesign CS5 Server
33
Introduction à Adobe InDesign CS5 Server
Forum aux questions
34