comment fait-on pour les objets?? [apache/AXIS] - Java - Programmation
Marsh Posté le 19-02-2003 à 13:18:47
ReplyMarsh Posté le 19-02-2003 à 13:27:51
pourquoi un drapal?? ça t'intéresse aussi??
PS: pourquoi j'ai pu l'option "savoir par mail si quelqu'un répond à mon post"??? je sais que ça a rien à voir avec le topic, mais bon, j'en profite!
Marsh Posté le 19-02-2003 à 14:27:58
arghbis a écrit : pourquoi un drapal?? ça t'intéresse aussi?? |
oui
pour ton autre question, aucune idée.
t'as qu'a venir de temps en temps
Marsh Posté le 19-02-2003 à 15:03:41
j'ai compris!! en haut y'a marquer activer la notification par email, ce doit être la fonction qui remplace la case à cocher!!
Marsh Posté le 19-02-2003 à 16:43:10
j'ai vraiment besoin d'une réponse, alors !
je me doute à peu près du comment ça marche, mais j'aimerais bien une réponse de kelk'un ki l'a déjà fait avan de me lancer dans des trucs pendables et que ça marche poas à la fin!
Marsh Posté le 19-02-2003 à 20:45:54
arghbis a écrit : salut tout le monde! |
bon j'ai justement fait un peu d'axis aujourd'hui
bon, en fait moi j'ai fait l'inverse (j'envoie des objets maison en reponse), mais à priori la manip doit etre a peu pres la meme. Tu as un deploy.xml pour ton service, et bien tu declares simplement ton objet la dedans en mappant un nom xsi (euh je crois) a une classe Java (ou autre, d'ailleurs).
Si tu veux la syntaxe précise, va falloir attendre demain
Marsh Posté le 19-02-2003 à 21:06:19
ben c à peu près ce que je pensais, mais si tu as la syntaxe demain, je la veux bien! merci!
Marsh Posté le 19-02-2003 à 23:40:00
Je peux te donner la solution pour un bean, qui est l'exemple le plus fréquent. Je te conseille fortement de passer par ce genre de mécanisme (après tout je suppose que ton appel SOAP te renvoit un objet business -> javabean est la meillere solution).
Suppose que ta méthode SOAP renvoit un JavaBean Customer. Tu dois bien t'arranger pour que les propriétés suivantes soient respectées :
exemple
Code :
|
Ensuite suppose que tu as ta méthode SOAP
Code :
|
Tu as ds ton fichier de deploiement un truc du genre
Citation : |
bon si je m'ennuie je te montre après comment faire pour récupérer les données au niveau du code lui meme
Marsh Posté le 19-02-2003 à 23:43:34
Alors pour le client
Code :
|
et voilà tu as récupéré ton bean Customer ... Si tu as d'autres questions ...
Marsh Posté le 19-02-2003 à 23:45:25
ah merde j'ai mal lu ... Tu veux envoyer des objets spécifiques et les récupérer au niveau de ton EJB? Bin y a rien de compliqué à priori si ton beanMapping est fait (voir deploiement)
Marsh Posté le 20-02-2003 à 08:51:58
je te remercie pour le mal que tu t'es donné! c à peu près ce que je pensais faire (à quelques subtilités près, que je n'avais pas vues), mais c cool d'avoir un exemple concret!
Marsh Posté le 20-02-2003 à 08:58:46
arghbis a écrit : je te remercie pour le mal que tu t'es donné! c à peu près ce que je pensais faire (à quelques subtilités près, que je n'avais pas vues), mais c cool d'avoir un exemple concret! |
you're welcome
pour la réception de données custom ca ne devrait pas etre trop dur si tu fait ton bean mapping
tiens nous au courant ok?
Marsh Posté le 20-02-2003 à 09:17:51
DarkLord a écrit : Alors pour le client
|
Pourquoi tu utilises pas plutot les stubs généréré avec WSDL2Java ?? c'est lourd d'utiliser l'objet Call à la mimine
Marsh Posté le 20-02-2003 à 09:18:25
explique toi tu m'intéresse
Marsh Posté le 20-02-2003 à 09:24:13
ReplyMarsh Posté le 20-02-2003 à 09:41:43
Dans un AXIS, y a un utilitaire qui s'appelle WSDL2JAVA qui permet d'analyser la structure du WSDL, d'en déduire les service exposés et les objets transitoires, et qui créént les stubs et javabeans qui correspondent.
après tu as plus qu'à construire un objet servicen appeler la méhode que tu veux dessus comme si c'était un objet locale ...
Pour moi, c'est un des principaux avantage d'axis.
c'est assez bien expliqué là : http://cvs.apache.org/viewcvs.cgi/ [...] , and data
edit ! marche pas le lien
Marsh Posté le 20-02-2003 à 10:25:15
j'avais vu cette utilitaire mais j'avais pas plus regardé que ca, merci. de toutes facons notre client est fait en C donc ... Ct juste un petit client java de test
Marsh Posté le 20-02-2003 à 10:28:55
ben tu peux aussi générer les stubs serveurs avec ca ...
Bien sûr, ca a un intérêt que si tu commences à bosser à partir d'un WSDL.
Sinon, y a aussi l'outil inverse : Java2WSDL qui est util quand t'as un service java que tu veux transformer en WebService
Marsh Posté le 20-02-2003 à 10:32:47
ah tiens?? ça, ça m'intéresse beaucoup! en effet, je développe la partie serveur de telle sorte qu'on puisse l'utiliser en "local", mais il faut aussi la mettre en accès via un webservice. Donc si je comprend bien, ayant programmé l'application, j'utilise java2wsdl, j'obtiens un fichier wsdl qui me permet de déployer l'appli?? c ça?? et donc de générer facilement le client à la suite! c cool ça!
Marsh Posté le 20-02-2003 à 10:34:27
c'est exactement ca ...
mais bon, faut que tu penses tout de suite à bien séparer le client et le serveur et à envoyer que des types simple ou des beans entre les 2 ...
Marsh Posté le 20-02-2003 à 10:37:57
des types simples?? ah ben non alors!!
moi le client m'envoie des objets complexes! et moi je lui renvoie des types simples effectivement!
ça marche pu dans ce cas là???
Marsh Posté le 20-02-2003 à 10:42:07
et bien ce n'est pas un String ni un int. c un objet composé de Collection, HashMap, types primitifs (String, int, etc) et d'autres types perso définis!
Marsh Posté le 20-02-2003 à 10:48:38
arghbis a écrit : et bien ce n'est pas un String ni un int. c un objet composé de Collection, HashMap, types primitifs (String, int, etc) et d'autres types perso définis! |
bin rien ne t'empeche de faire un bean de tout ca hein
Marsh Posté le 20-02-2003 à 10:50:36
donc, au final :
- la solution de benou, c super si tu ne passe que des types simples (String, int, et autres)
- la solution de DarkLord, c super si tu as besoin de types complexes
right??
Marsh Posté le 20-02-2003 à 10:57:37
non pas right du tout !
j'ai jamais dit que tu pouvais passer que des types simples !
tu peux passer des types que Axis connait. De base, il connait les types simples, les beans (d'ailleur il ne respecte pas exactement la norme javabean ), et un certains nombre d'autres classes (dont certaines de java.util).
Mais bon, le plus simple c'est de ne passer que des types simples et des beans. Là t'es sûr de pas avoir de problèmes !
Marsh Posté le 20-02-2003 à 10:59:29
donc si je convertit mon objet en bean, ça marche (désolé, chuis un peu lent à la comprenette, ça fait que 2 jours que je fais du java!)
Marsh Posté le 20-02-2003 à 11:01:33
ca fait 2 jours que tu fais du java et tu te lance dans AXIS ??
sinon la réponse est oui.
Marsh Posté le 20-02-2003 à 11:05:44
ben j'ai déjà fait un peu de java, mais c t y'a longtemps! et si tu veux, là j'arrive dans un projet où tout est fait en java, sur plusieurs sites. Donc bon, développer la partie java, j'y arrive (c un peu laborieux car les classes qui sont déjà développées sont énormes et ça fait pas longtmps que je bosse dessus), mais le coup du axis avec les types "complexe" les beans et autrs, g t un peu dépassé. Maintenant, ça va mieux! merci pour vos explications!
Marsh Posté le 20-02-2003 à 11:50:59
arghbis a écrit : donc si je convertit mon objet en bean, ça marche (désolé, chuis un peu lent à la comprenette, ça fait que 2 jours que je fais du java!) |
voir 3 posts plus haut
Marsh Posté le 20-02-2003 à 22:34:05
et je confirme que le coup du bean déclaré avec le <beanMapping> marche dans les deux sens (aussi bien en "reception" par axis (request du client) qu'en response, testé et approuvé cet aprem
Marsh Posté le 20-02-2003 à 22:36:50
the real moins moins a écrit : et je confirme que le coup du bean déclaré avec le <beanMapping> marche dans les deux sens (aussi bien en "reception" par axis (request du client) qu'en response, testé et approuvé cet aprem |
Marsh Posté le 20-02-2003 à 22:41:12
par curiosité, vous vous en servez pour quels genre de besoin des web services ??
Marsh Posté le 20-02-2003 à 22:42:20
benou a écrit : par curiosité, vous vous en servez pour quels genre de besoin des web services ?? |
On s'en sert pour tracker l'état des colis -> MP si tu veux des détails
Marsh Posté le 20-02-2003 à 23:40:09
DarkLord a écrit : |
moi j'aurais simplement dit "pour offrir une interface des clients distants (non-java, qui plus est) vers l'application server/les ejb"
Marsh Posté le 20-02-2003 à 23:47:44
the real moins moins a écrit : moi j'aurais simplement dit "pour offrir une interface des clients distants (non-java, qui plus est) vers l'application server/les ejb" |
bin voilà tu l'as dit
Marsh Posté le 19-02-2003 à 13:05:56
salut tout le monde!
dans le cadre de mes activités diverses et variées, je suis amené à faire un webservice en Java, et j'ai donc choisi comme support apache/AXIS. bon ok, je vois comment s'en servir pour des choses simples, mais là une question insidieuse me turlupine : comment fait-on pour récuprérer des objets envoyés par le client???
des tpes simples (String et autres) c pas compliqué, mais les objets, pas d'idée!
vous savez??