297 lines
9.9 KiB
Plaintext
297 lines
9.9 KiB
Plaintext
<!DOCTYPE html>
|
|
<html lang="fr">
|
|
<head>
|
|
<!-- Translated by Blorec Hervé le 2012-01-23-->
|
|
<!-- Translated by Hervé Blorec 2013-10-08 -->
|
|
<title>JMRI: XML IO Servlet</title>
|
|
<!--#include virtual="/help/fr/parts/Style.shtml" -->
|
|
</head>
|
|
|
|
<body>
|
|
<!--#include virtual="/help/fr/parts/Header_fr.shtml" -->
|
|
<div id="mBody">
|
|
<!--#include virtual="Sidebar.shtml" -->
|
|
<div id="mainContent">
|
|
|
|
<h1>JMRI: XML IO Servlet</h1>Le servlet JMRI XML fournit un
|
|
accès Web bi-directionnel aux services JMRI.
|
|
|
|
<p>Le servlet vit dans le paquet <a href=
|
|
"https://jmri.org/JavaDoc/doc/jmri/web/servlet/xmlio/package-summary.html">
|
|
jmri.web.servlet.xmlio</a> , et fournit un accès Web
|
|
au <a href=
|
|
"https://jmri.org/JavaDoc/doc/jmri/web/xmlio/package-summary.html">
|
|
JMRI XML IO paquet</a>. Par défaut, le serveur web
|
|
JMRI enverra tout URL qui commence par/xmlio à ce
|
|
servlet. Il liste tous les éléments connus d'un
|
|
type spécifié, accepte des changements de la
|
|
valeur/état des éléments, et
|
|
répond avec valeur actuelle/état des
|
|
éléments. Si envoyé une liste
|
|
d'éléments avec des valeurs actuelles, il
|
|
"surveillera" les changements de tous ces
|
|
éléments, retournant les valeurs
|
|
nouvelles.</p>Elément types complèments
|
|
supportés :
|
|
|
|
<ul>
|
|
<li>alimentation</li>
|
|
|
|
<li>aiguillage</li>
|
|
|
|
<li>capteurr</li>
|
|
|
|
<li>tête signal</li>
|
|
|
|
<li>mât signal</li>
|
|
|
|
<li>mémoire</li>
|
|
|
|
<li>itinéraire</li>
|
|
</ul>Les types d'éléments de liste seule:
|
|
|
|
<ul>
|
|
<li>Liste</li>
|
|
|
|
<li>trame</li>
|
|
|
|
<li>panneau</li>
|
|
|
|
<li>métadata</li>
|
|
|
|
<li>Chemin de fer</li>
|
|
</ul>Le Régulateur est un cas unique, la syntaxe
|
|
légèrement différente, soutient la
|
|
lecture et les modifications, mais pas la liste ou la
|
|
surveillance:
|
|
|
|
<ul>
|
|
<li>Régulateur</li>
|
|
</ul>Il y a plusieurs exemples de pages qui montrent comment
|
|
cela peut être utilisé:
|
|
|
|
<dl>
|
|
<dt><a href=
|
|
"http://localhost:12080/web/request.html">web/request.html</a></dt>
|
|
|
|
<dd>Rend une seule requête XML pour tous les capteurs
|
|
disponibles, et montre leur statut dans un tableau.</dd>
|
|
|
|
<dt><a href=
|
|
"http://localhost:12080/web/monitor.html">web/monitor.html</a></dt>
|
|
|
|
<dd>utilise les requêtes temporisées pour
|
|
surveiller l'état de tous les capteurs, la mise
|
|
à jour d'une table lors de tout changement.</dd>
|
|
|
|
<dt><a href=
|
|
"http://localhost:12080/web/throttle.html">web/throttle.html</a></dt>
|
|
|
|
<dd>Envoie une commande de vitesse pour une locomotive DCC
|
|
sur le réseau quand une touche est
|
|
enfoncée.</dd>
|
|
|
|
<dt><a href=
|
|
"http://localhost:12080/web/turnoutPanel.html">web/turnoutPanel.html</a></dt>
|
|
|
|
<dd>Exemple d'un panneau de commande sur une page web.</dd>
|
|
|
|
<dt><a href=
|
|
"http://localhost:12080/web/turnoutPanel.html">web/turnoutMonitor.html</a></dt>
|
|
|
|
<dd>Table Aiguillage plus complexes, avec des boutons pour
|
|
mettre un aiguillage dévié ou droit.</dd>
|
|
|
|
<dt><a href=
|
|
"http://localhost:12080/web/JMRI_XMLIO_test.html">web/JMRI_XMLIO_test.html</a></dt>
|
|
|
|
<dd>Utile pour envoyer plusieurs commandes au serveur xmlio
|
|
et voir les réponses.</dd>
|
|
|
|
<dt><a href=
|
|
"http://localhost:12080/web/JMRIMobile.%20html">web /
|
|
JMRIMobile.html</a></dt>
|
|
|
|
<dd>Utile le serveur xmlio pour récupérer des
|
|
données à partir de JMRI, l'envoi et le suivi
|
|
des changements des modificationsdes
|
|
éléments.</dd>
|
|
</dl>
|
|
|
|
<p>S'il vous plaît noter que ce servlet a seulement
|
|
été utilisé avec le <a href=
|
|
"index.shtml">Serveur Web JMRI</a>, et peut ne pas
|
|
fonctionner avec d'autres conteneurs de servlets. Nous nous
|
|
sommes engagés à le faire fonctionner,
|
|
cependant, entrer en contact avec les développeurs
|
|
JMRI si vous rencontrez des problèmes.</p>
|
|
|
|
<h2>Format Demande</h2>Le schéma XML est défini
|
|
dans le <a href=
|
|
"https://jmri.org/xml/schema/xmlio.xsd">document schéma
|
|
xmlio.xsd</a> .
|
|
|
|
<p>Il ya aussi une syntaxe basée sur les attributs
|
|
disponibles. (voir les exemples de l'état ci-dessous)
|
|
Le serveur xmlio répond avec la même syntaxe que
|
|
celle qu'utilise la demande.</p>
|
|
|
|
<p>Voici quelques exemple des demandes et
|
|
réponses.</p>
|
|
|
|
<h3>Obtenir le statut des objets individuels</h3>Demande:
|
|
<pre style="font-family: monospace;">
|
|
|
|
<xmlio>
|
|
<item>
|
|
<type>turnout</type>
|
|
<name>IT12</name>
|
|
</item>
|
|
<item>
|
|
<type>sensor</type>
|
|
<name>West sensor</name>
|
|
</item>
|
|
<item>
|
|
<type>power</type>
|
|
<name>power</name>
|
|
</item>
|
|
</xmlio>
|
|
</pre>
|
|
<pre style="font-family: monospace;">
|
|
|
|
<xmlio>
|
|
<item>
|
|
<type>turnout</type>
|
|
<name>IT12</name>
|
|
<value>2</value>
|
|
</item>
|
|
<item>
|
|
<type>sensor</type>
|
|
<name>West sensor</name>
|
|
<value>4</value>
|
|
</item>
|
|
<item>
|
|
<type>power</type>
|
|
<name>power</name>
|
|
<value>2</value>
|
|
</item>
|
|
</xmlio>
|
|
</pre>La "valeur" élément est insérée
|
|
dans la demande, et puis est retournée comme réponse.
|
|
Vous pouvez simplement tourner autour de la réponse et
|
|
l'utiliser comme une autre demande. Si la "valeur"
|
|
éléments est présente pour tous les articles,
|
|
la réponse ne sera restituée que lorsque l'un ou
|
|
plusieurs des état de l'élément inclus a
|
|
changé pour quelque chose de différent.
|
|
|
|
<h3>Obtenez tous les objets d'un type</h3>Demande:
|
|
<pre style="font-family: monospace;">
|
|
|
|
<xmlio>
|
|
<list>
|
|
<type>sensor</type>
|
|
</list>
|
|
</xmlio>
|
|
</pre>Réponse:
|
|
<pre style="font-family: monospace;">
|
|
|
|
<xmlio>
|
|
<item>
|
|
<type>sensor</type>
|
|
<name>IS1</name>
|
|
<value>2</value>
|
|
</item>
|
|
<item>
|
|
<type>sensor</type>
|
|
<name>IS2</name>
|
|
<value>4</value>
|
|
</item>
|
|
<item>
|
|
<type>sensor</type>
|
|
<name>West sensor</name>
|
|
<value>2</value>
|
|
</item>
|
|
</xmlio>
|
|
</pre>La réponse peut être retournée et
|
|
utilisée comme la prochaine requête.
|
|
|
|
<h3>Régler le statut d'un objet</h3>Demande:
|
|
<pre style="font-family: monospace;">
|
|
|
|
<xmlio>
|
|
<item>
|
|
<type>turnout</type>
|
|
<name>IT12</name>
|
|
<set>2</set>
|
|
</item>
|
|
</xmlio>
|
|
</pre>Réponse:
|
|
<pre style="font-family: monospace;">
|
|
|
|
<xmlio>
|
|
<item>
|
|
<type>turnout</type>
|
|
<name>IT12</name>
|
|
<value>2</value>
|
|
</item>
|
|
</xmlio>
|
|
</pre>L'élément "set" de la demande résulte de
|
|
l'état fixé à la valeur donnée, et puis
|
|
est retournée dans la réponse comme un
|
|
élément de valeur avec la valeur correcte à ce
|
|
point.
|
|
|
|
<p>Toutes les écritures sont faites avant que les
|
|
valeurs soient recueillies pour toute lecture, mais il n'y a
|
|
aucune garantie que les conséquences de l'écrit
|
|
soient propagées complètement.</p>
|
|
|
|
<h3>Définir le statut d'un objet (syntaxe basée
|
|
sur les attributs)</h3>
|
|
|
|
<h3>Contrôle un régulateur</h3>
|
|
Demande:
|
|
<pre style="font-family: monospace;">
|
|
|
|
<turnout name="IT12" set="2" />
|
|
</pre>Réponse:
|
|
<pre style="font-family: monospace;">
|
|
|
|
<turnout name="IT12" value="2" />
|
|
</pre>Un élément peut être utilisé pour
|
|
contrôler un régulateur via le ThrottleManager DCC par
|
|
défaut. La première utilisation alloue le
|
|
régulateur, et tous les postérieurs utilisent les
|
|
attributs présents:
|
|
<code><xmlio>
|
|
<throttle>
|
|
<adresse> 1234</address>
|
|
<vitesse> 0,75</vitesse>
|
|
<forward> true</forward>
|
|
<F3> False</F3>
|
|
</throttle>
|
|
</Xmlio>
|
|
</code>
|
|
Un élément régulateur est retourné inchangé.
|
|
|
|
<h2>Documents associés</h2>
|
|
<p>C.F. K H Wolf, K Froitzheim, M Weber, Department of Distributed
|
|
Systems, Université d'Ulm, "Interactive Video and
|
|
Remote Control via the World Wide Web", dans "Lecture Notes
|
|
in Computer Science", Springer, Berlin, 1996.<br>
|
|
Auparavant dans le volume 7, numéro 5 de "Märklin
|
|
Digital Newsletter", Dr T. Catherall Ed, Septembre/Octobre
|
|
1995, <a href=
|
|
"http://web.archive.org/web/*/http://rr-vs.informatik.uni-ulm.de/rr/">
|
|
Page référencée</a> <a href=
|
|
"http://rr.informatik.tu-freiberg.de/index.php?con=home&sel=&lang=eng&js=1&">
|
|
réhébergée</a>.</p>
|
|
|
|
<!--#include virtual="/help/fr/parts/Footer_fr.shtml" -->
|
|
</div>
|
|
</div>
|
|
<script src="/js/help.js"></script>
|
|
</body>
|
|
</html>
|