OVH Cloud OVH Cloud

Traducteur XML message plat

3 réponses
Avatar
sylvainfolliet
bonjour
je cherche à constituer une entete de message d'une dizaine de
caractères dans
une classe Traducteur.java
cette chaine est à lire dans une autre classe devant se comporter
comme une table de valeurs (LectureConf.java)
comment je passe les paramètres dans la classe LectureConf
comment j'utilise la méthode Get dans la classe Traducteur pour en
récupérer
l'entete recherchée ?
je dois faire un GetEnteteMessage () ?
merci de détailler (vous l'avez compris je débute)
Sylvain

3 réponses

Avatar
Adobex
Salut,

"sylvainFolliet" a écrit dans le message de
news:
bonjour
je cherche à constituer une entete de message d'une dizaine de
caractères dans une classe Traducteur.java


C'est à dire? Dis-nous en plus sur le but du programme... traduire
quoi?...etc.

cette chaine est à lire dans une autre classe devant se comporter
comme une table de valeurs (LectureConf.java)



comment je passe les paramètres dans la classe LectureConf


Tout dépend de la façon dont tu mets en oeuvre tout ça...

comment j'utilise la méthode Get dans la classe Traducteur pour en
récupérer l'entete recherchée ?


// Ce qui suit est un exemple, tel quel ça ne fera pas ce que tu veux,
// c'est vraiment pour te donner une idée de la façon d'écrire le code
String sEntete = Traducteur.GetEnteteMessage();

je dois faire un GetEnteteMessage () ?
merci de détailler (vous l'avez compris je débute)
Sylvain


Ben oui mais si tu débutes, il faut prendre un bouquin qui t'apprennes à
programmer objet, ensuite tu sauras comment passer tes arguments et comment
faire appel aux méthodes de tes classes et objets. Là je ne suis pas sûr que
quelqu'un puisse t'aider davantage, surtout si tu ne rend pas plus clair ce
que tu veux faire.

Voici le lien par lequel tu peux commencer le java :
http://java.sun.com/docs/books/tutorial/getStarted/index.html
Bien entendu c'est en anglais.

Il te faut également regarder dans le FAQ de ce newsgroup, voir le message
"[FAQ] fr.comp.lang.java".

Voilà ben bon courage.

Adobex

Avatar
sylvainfolliet
(sylvainFolliet) wrote in message news:...

bonjour concernant mon projet:

j'avais compris qu'il fallait que je commence par étudier JAVA
les sites manquent pas j'y suis déjà depuis pas mal de temps...
c'est ni le courage ni le temps qui me manque, l'intelligence peut
etre ...
j'ai meme suivi un cours IBM à Noisy (pub)

je dois traduire des commandes clients reçues sur un serveur HTTP au
format XML
apres parsing j'ai un élément JDOM que je vais devoir parcourir au
travers d'expreesion Xpath afin de mettre à plat les données
(traitement sur AS400 via
MQ séries IBM)
si joint une ebauche de ce que je dois faire :
O = Officine (emetteur)
R = Repartiteur (Recepteur)
(je travail chez un repartiteur pharmaceutique)

1. Configuration : La classe qui stocke toutes les données de config.
et qui
offre deux méthodes :
- DescMessage getDescMessageParTypeCorps(String typeCorps)
- DescMessage getDescMessageParCodeTransaction(String
codeTransaction)

La 1ère sert dans le sens OvR(Officine vers repartiteur), la seconde
dans le sens RvO.

Je développe Configuration.java en 3 temps :
a. La première méthode qui renvoie en dur un descripteur de message
(voir
ci-dessous) avec d'abord le descripteur d'entête de message MQ, puis
d'entête
de message CSRP puis d'entête de Commande puis de ligne.
b. La seconde méthode (pour valider que OvR + RvO redonne bien le
message
original)
c. ... Il est temps de lire la configuration !

2. DescMessage : Classe qui stocke la liste des descripteurs
enregistrements
et qui offre aussi trois méthodes :
- Iterator getEnregistrements()
- DescEnregistrement getDescEnregistrementParCodeEntete(String
codeEntete)
- DescEnregistrement getDescEntete()

Comme pour l'autre classe, la 1ère sert dans le sens OvR pour
récupérer la
liste des enregistrements dans l'ordre attendu par l'AS400. La seconde
dans le
sens RvO pour récupérer les infos de décodage d'un message reçu de
l'AS400.
La troisième retourne un descripteur d'enregistrement pour la partie
entête de
message MQ.

Là aussi, je développe d'abord la méthode getDescEntete() avec un
descripteur construit en dur dans le code. Ce descripteur d'entête va
contenir
3 champs :
- 1 champ fixe "9011"
- 1 champ chaine lg=2, XPath="???"
- 1 champ fixe "C N"

Ensuite, je peux passer à la partie getEnregistrements() avec 1
(entête
message CSRP), 2 (entête commande) et finalement 3 descripteurs (ligne
commande).

Avec ça, mon traducteur OvR va pouvoir construire l'entête de message
MQ en
appelant :
DescMessage descMsg = ...;
DescEnregistrement descEntete = descMsg.getDescEntete();
String entete = descEntete.xml2Cerp(requete.getEnvelope().getRootElement());

çà c'est mon algorithme de programation
il n'est évidement pas de moi (j'en serai trop fier)
je me documente à bloc et j'enchaine sur le codage dans la foulée
je vous tiendrai au courant de mes évolutions
les conseils et surtout les morceaux de codes sont les bien venus
pas pour qu'on me fasse le boulot à ma place mais parceque le seul
language
que je connaisse à ce jour est ..... Assembleur 6809 !!!...!!
du coup l'objet , la classe , la methode , les arguments ... çà
m'évoquent autant qu'à vous j'imagine si je parle de flag, timer,
registre , vecteur
d'interruption , décalage du bit n vers la droite ...
j'ai une vision structurelle des choses alors qu'il faut maintenant
que je
résonne en termes de classe !

à +
sylvain

Avatar
sylvainfolliet
(sylvainFolliet) wrote in message news:...
(sylvainFolliet) wrote in message news:...

bonjour concernant mon projet:

j'avais compris qu'il fallait que je commence par étudier JAVA
les sites manquent pas j'y suis déjà depuis pas mal de temps...
c'est ni le courage ni le temps qui me manque, l'intelligence peut
etre ...
j'ai meme suivi un cours IBM à Noisy (pub)

je dois traduire des commandes clients reçues sur un serveur HTTP au
format XML
apres parsing j'ai un élément JDOM que je vais devoir parcourir au
travers d'expreesion Xpath afin de mettre à plat les données
(traitement sur AS400 via
MQ séries IBM)
si joint une ebauche de ce que je dois faire :
O = Officine (emetteur)
R = Repartiteur (Recepteur)
(je travail chez un repartiteur pharmaceutique)

1. Configuration : La classe qui stocke toutes les données de config.
et qui
offre deux méthodes :
- DescMessage getDescMessageParTypeCorps(String typeCorps)
- DescMessage getDescMessageParCodeTransaction(String
codeTransaction)

La 1ère sert dans le sens OvR(Officine vers repartiteur), la seconde
dans le sens RvO.

Je développe Configuration.java en 3 temps :
a. La première méthode qui renvoie en dur un descripteur de message
(voir
ci-dessous) avec d'abord le descripteur d'entête de message MQ, puis
d'entête
de message CSRP puis d'entête de Commande puis de ligne.
b. La seconde méthode (pour valider que OvR + RvO redonne bien le
message
original)
c. ... Il est temps de lire la configuration !

2. DescMessage : Classe qui stocke la liste des descripteurs
enregistrements
et qui offre aussi trois méthodes :
- Iterator getEnregistrements()
- DescEnregistrement getDescEnregistrementParCodeEntete(String
codeEntete)
- DescEnregistrement getDescEntete()

Comme pour l'autre classe, la 1ère sert dans le sens OvR pour
récupérer la
liste des enregistrements dans l'ordre attendu par l'AS400. La seconde
dans le
sens RvO pour récupérer les infos de décodage d'un message reçu de
l'AS400.
La troisième retourne un descripteur d'enregistrement pour la partie
entête de
message MQ.

Là aussi, je développe d'abord la méthode getDescEntete() avec un
descripteur construit en dur dans le code. Ce descripteur d'entête va
contenir
3 champs :
- 1 champ fixe "9011"
- 1 champ chaine lg=2, XPath="???"
- 1 champ fixe "C N"

Ensuite, je peux passer à la partie getEnregistrements() avec 1
(entête
message CSRP), 2 (entête commande) et finalement 3 descripteurs (ligne
commande).

Avec ça, mon traducteur OvR va pouvoir construire l'entête de message
MQ en
appelant :
DescMessage descMsg = ...;
DescEnregistrement descEntete = descMsg.getDescEntete();
String entete = descEntete.xml2Cerp(requete.getEnvelope().getRootElement());

çà c'est mon algorithme de programation
il n'est évidement pas de moi (j'en serai trop fier)
je me documente à bloc et j'enchaine sur le codage dans la foulée
je vous tiendrai au courant de mes évolutions
les conseils et surtout les morceaux de codes sont les bien venus
pas pour qu'on me fasse le boulot à ma place mais parceque le seul
language
que je connaisse à ce jour est ..... Assembleur 6809 !!!...!!
du coup l'objet , la classe , la methode , les arguments ... çà
m'évoquent autant qu'à vous j'imagine si je parle de flag, timer,
registre , vecteur
d'interruption , décalage du bit n vers la droite ...
j'ai une vision structurelle des choses alors qu'il faut maintenant
que je
résonne en termes de classe !

à +
sylvain


MERCI DE M'AIDER