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