Partage
  • Partager sur Facebook
  • Partager sur Twitter

Discovery Service WCF en java

Decouverte de service WCF automatique en java

    30 juin 2015 à 11:44:55

    Bonjours,

    Bon j'ai pas beaucoup d'espoir car partout ou je poste, ba personne ne me répond ^^ mais bon sait on jamais :p 

    Alors j'ai un service WCF en c# que j'utilise en java (oui oui oui , c'est possible). Ce que je souhaite c'est que lors de l'utilisation de mon programme, le service vas etre rechercher sur tous le réseaux, afin que l'on recupere la bonne adresse du service afin de lancer mon programme sans configuration pas l'utilisateur.

    Donc pour le moment, je suis a pas grand chose, j'ai fait des recherche sur l'udp car le sevice lit sur un port de broadcast, je recherche la comment envoyer des soap messages sur le port. Mais je n'ai pas de grand espoir.

    Donc si vous avez des idées de comment trouver se service automatiquement. Je vous en serai infiniment reconnaissant.

    • Partager sur Facebook
    • Partager sur Twitter
      30 juin 2015 à 12:09:39

      Bonjour.

      Je ne connais pas la configuration à effectuer pour un service WCF, mais j'imagine que c'est IP et port ?

      Il n'y a pas (à ma connaissance et d'après ce que j'ai vu sur divers sites) de solution pour recherche, sur le réseau, l'IP est le port de manière automatique.
      Parcourir l'ensemble des IPs et ports possibles n'est pas envisageable : calcul approximatif : 256^4 en IPv4 * 65535 le nombre de ports * le temps d'un timeout ou d'une erreur.
      C'est un peu comme faire tous les numéros de téléphone possibles en espérant tomber sur la bonne personne (en espérant qu'elle décroche ahah).

      Stocker les paramètres de connexion dans un fichier de configuration n'a rien de choquant, bien au contraire !

      • Partager sur Facebook
      • Partager sur Twitter
      Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
        30 juin 2015 à 13:04:42

        oui je suis entierement daccord mais pour avoir les parametres de connexion, il faut bien les trouver une premiere fois :) . et c'est dans ce but que je le fait.

        il n'y a pas de truc automatique, il a des fonctions en C# qui permettent de faire la recherche sur le réseaux du service WCF, ce que j'essaie de faire mais pas de bonne solution encore trouvé ^^.

        • Partager sur Facebook
        • Partager sur Twitter
          30 juin 2015 à 14:14:12

          Je ne connais pas cette fonctionnalité de .NET.

          Pour la connaitre il faut voir côté serveur la manière dont tu déploies ce service.
          Si tu ne fais qu'1 clic sur le bouton "Run" dans ton IDE, forcément là tu n'as aucune idée de la configuration.

          Après une recherche succincte sur le net, le port par défaut serait 808.
          Si tu le lances en local j'imagine que ton IP sera localhost.

          • Partager sur Facebook
          • Partager sur Twitter
          Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
            30 juin 2015 à 15:31:12

            var udp = new UdpDiscoveryEndpoint();
             
            //recherche de type de service que l'on souhate
            FindCriteria find = new FindCriteria(ServerType);
            find.MaxResults = 1;
            var findResponse = new DiscoveryClient(udp).Find(find);
            

            voila le codze qui fait sa en c# :p ^^, voila pk j'ai le sum de trifouiller tous java et les docs pour faire pareil en java ^^.

            le service est déployé grace a un service window sur le port : 8000

            mais ecoute le : soap.udp://239.255.255.250:3702/

            sa permet normalement de faire la découverte. Mais aucune possibilité d'avoir un retour qui me donne des infos de mon service avec du MulticastSocket.

            Du coup je suppose que je doit utiliser SOAP, mais de un je comprend rien a ce truc et de deux je trouve rien propres et simple ....

            • Partager sur Facebook
            • Partager sur Twitter
              30 juin 2015 à 15:50:44

              Je ne connais pas cette techno.

              D'après MSDN et divers sites :

              • le serveur est configuré en mode "découverte"
              • il réagit aux événements de type "broadcast"

              Pour effectuer ce broadcast en Java ça je ne sais pas.
              Donc il faudra aller chercher un peu sur le net.

              Mais dans un 1er temps il vaudrait mieux fixer la configuration manuellement.
              Tu pourras améliorer ça avec la découverte plus tard. 

              • Partager sur Facebook
              • Partager sur Twitter
              Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
                3 juillet 2015 à 9:12:17

                la config manuel j'y arrive :p, je cherche justement la découverte pour sa. 

                Sinon pour le broadcast de socket j'y arrive mais pas SOAP avec le message spécifique dont je ne sais pas ce que je doit rentrer.

                Bref je sens que je vais partir sur du JNI car bon, la mit a part réinventer la roue et que personne n'a de piste concrete .

                En tous cas merci a toi.

                • Partager sur Facebook
                • Partager sur Twitter
                  3 juillet 2015 à 10:02:39

                  Regarde sur Google, je pense que cette technique existe déjà en Java :
                  "Java WCF DiscoveryClient"
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
                    3 juillet 2015 à 16:04:39

                    Désolé mais je vais te parraitre un peu sec mais bon ...

                    Je poste pas et je fait pas des recherches 1semaine pour pas chercher et trouver mon bonheur en tapant exactement ce que je cherche sur google ....

                    Si je poste ici c'est que je cherche des solutions qui fonctionne et qui coresspondent a ce que je veut. Apres je suis pas dieux en recherche mais peut importe ce que j'ai chercher/trouver j'ai pas trouver mon bhoneur.

                    • Partager sur Facebook
                    • Partager sur Twitter
                      3 juillet 2015 à 16:25:49

                      • J'ai déjà utilisé WCF au sein d'une même solution .NET, mais jamais via un autre langage comme le Java.
                        Donc je ne peux pas te donner de solution directe.
                      • Dans 95% du temps les personnes posent des questions qu'elles auraient pu trouver seul sur le net.
                      • Tu n'as pas précisé que tu avais essayé les différentes solutions trouvées sur le net.

                      La seule solution que je pouvais t'apporter était donc internet.

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
                        4 juillet 2015 à 21:47:37

                        Tiens salut snakekiller,

                        T'as posté sur openclassrooms aussi (bonne idée, tu augmentes des chances d'avoir une réponse). Tu avais dit que c'était "facile" lorsque tu as généré du code en Java sur ton Netbeans grâce au WSDL, mais je t'avais prévenu que ce ne serait pas "facile"  :-°

                        Tu ne pourras pas facilement imiter en Java le bout de code que tu montres en C# car tu ne sais pas ce que ton client C# fait en interne. Le fait que tu ais le "sum" n'arrangera rien à ton problème : ce n'est pas seulement dans la doc Java que tu dois chercher, mais dans le MSDN pour comprendre ce que ton client C# fait d'abord afin que le serveur lui réponde. Ce n'est qu'en comprenant cela que tu pourras réussir à faire la même chose en Java.

                        Tu te rappels de mon projet multicast ? ( https://github.com/eau-de-la-seine/multicast-wrapper ). Je compte faire la même chose en C# mais ça va prendre un peu de temps.

                        • Partager sur Facebook
                        • Partager sur Twitter
                        Site : https://gokan-ekinci.appspot.com | Miagiste en recherche d'emploi | Profil [Dév. Java SE & EE | Dév. QlikView]
                          5 juillet 2015 à 11:52:59

                          Gugelhupf a écrit:

                          Tu te rappels de mon projet multicast ? ( https://github.com/eau-de-la-seine/multicast-wrapper ). Je compte faire la même chose en C# mais ça va prendre un peu de temps.

                          1er follower ! :soleil:
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
                            6 juillet 2015 à 9:41:57

                            Pinguet62 a écrit:

                            • J'ai déjà utilisé WCF au sein d'une même solution .NET, mais jamais via un autre langage comme le Java.
                              Donc je ne peux pas te donner de solution directe.
                            • Dans 95% du temps les personnes posent des questions qu'elles auraient pu trouver seul sur le net.
                            • Tu n'as pas précisé que tu avais essayé les différentes solutions trouvées sur le net.

                            La seule solution que je pouvais t'apporter était donc internet.


                            Sans vouloir te vexer si je recheche pas sur internet ce que je veut trouver avant de poster tu crois vraiment que je ferai un truc aussi compliqué ? 

                            Gugelhupf a écrit:

                            Tiens salut snakekiller,

                            T'as posté sur openclassrooms aussi (bonne idée, tu augmentes des chances d'avoir une réponse). Tu avais dit que c'était "facile" lorsque tu as généré du code en Java sur ton Netbeans grâce au WSDL, mais je t'avais prévenu que ce ne serait pas "facile"  :-°

                            Tu ne pourras pas facilement imiter en Java le bout de code que tu montres en C# car tu ne sais pas ce que ton client C# fait en interne. Le fait que tu ais le "sum" n'arrangera rien à ton problème : ce n'est pas seulement dans la doc Java que tu dois chercher, mais dans le MSDN pour comprendre ce que ton client C# fait d'abord afin que le serveur lui réponde. Ce n'est qu'en comprenant cela que tu pourras réussir à faire la même chose en Java.

                            Tu te rappels de mon projet multicast ? ( https://github.com/eau-de-la-seine/multicast-wrapper ). Je compte faire la même chose en C# mais ça va prendre un peu de temps.

                            alors je te répond encore et toujours la meme chose c'est simple te manger du WCF dans java, c'est juste la fonction de recherche qui n'existe pas et donc n'est pas facile. 

                            sinon tu croit vraiment que j'ai pas essayer ? Si je donne les infos des ports écouter et d'autre trucs, tu crois que je les ai eu par magie ?

                            D'ici que tu ai finit esperont que j'ai trouver une autre solution.

                            Je vous repond peut etre de maniere sec, mais j'ai l'impression que vous prennez pour un débile mental. Les gens si je veut faire un truc compliqué comme sa vous pensez que c'est la premiere fois que je code de ma vie .... 

                            Sur ce merci quand meme.

                            ps: un pseudo sa s'écrit correctement aussi .....

                            -
                            Edité par snaquekiller 6 juillet 2015 à 9:42:24

                            • Partager sur Facebook
                            • Partager sur Twitter
                              6 juillet 2015 à 14:29:55

                              snaquekiller a écrit:

                              ps: un pseudo sa s'écrit correctement aussi .....

                              Sur ton icône il y a écrit Snake K :-° .

                              Aussi oui, tu réponds de manière sec, les gens qui te répondent sur les forums le font par passion et sympathie (pas pour avoir des sous), donc si tu leurs répond de cette manière tu pourras attendre très longtemps avant que d'autres te viennent en aide.

                              • Partager sur Facebook
                              • Partager sur Twitter
                              Site : https://gokan-ekinci.appspot.com | Miagiste en recherche d'emploi | Profil [Dév. Java SE & EE | Dév. QlikView]
                                6 juillet 2015 à 16:11:43 - Message modéré pour le motif suivant : Aucune formule de politesse de base


                                  7 juillet 2015 à 8:48:25

                                  Et respecter les autres sa fait partie ? car gugelhupf ne le fait pas donc bon . Sur ce vue que de toute maniere personne ne peut m'aider, je vous dit a plus. 

                                  Le site du zero etait tellement mieux avant.... Au moin il y avait des gens bien plus compétant et qui nous prennait pas pour des debiles.

                                  (si tu veut me moderer encore fait le je m'en fou, sa montrera juste que on peut pas dire la vérité sur ce forum maintenant, car je n'ai insulter personne sur mon poste precedent. J'ai juste dit la vérité sur ce qu'on me repond comme si j'etais un mec a qui on devait dire google.com c'est bien, je t'assure. Et le motif de moderation excuse moi mais LOL, sa fait un peu j'aime pas trop ce que tu dit donc bon je te supprime ton message car j'aime pas mais j'ai pas de vrai raison.

                                  et si tu modere mon poste tu devrai modere le poste au dessus du monsieur car hors sujet et aussi inaproprié que moi. Mais bon sa doit être ton pote donc bon.

                                  Sur ce bonne continuation. 

                                  -
                                  Edité par snaquekiller 7 juillet 2015 à 8:52:55

                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Discovery Service WCF en java

                                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                  • Editeur
                                  • Markdown