IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Interaction entre un client lourd JAVA et des pages PHP


Sujet :

Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 24
    Points : 20
    Points
    20
    Par défaut Interaction entre un client lourd JAVA et des pages PHP
    Bonjour à tous,

    Je cherche à faire interagir un client lourd JAVA avec des pages PHP. Ce client doit envoyer des requetes HTML vers le serveur qui retourne une page HTML (ou XML - le script PHP devant encore être écrit) qui doit ensuite le parser pour traiter le résultat.

    Honnêtement, je ne sais absolument pas où chercher, si des librairies peuvent m'aider sur le sujet ou comment je peux faire cela.
    Pour les scripts PHP, pas de souci, je peux gérer cela. Mais je ne sais pas trop comment faire pour :
    1- envoyer la requete en java
    2- récupérer la réponse

    Pour ce qui est du traitement, je pense générer un XML côté serveur pour ensuite le parser avec jDOM. Qu'en pensez-vous ?

    Je vous remercie pour toute aide que vous pourrez m'apporter

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Points : 653
    Points
    653
    Par défaut
    Je te conseille d'utiliser les WebServices. Il existe sans doute des librairies PHP pour mettre en oeuvre les WebServices côté serveur. Pour consommer le WebService côté client, tu dois utiliser l'utilitaire wsimport fourni avec le jdk pour générer les classes Stub qui te permettront d'accéder aux services.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 24
    Points : 20
    Points
    20
    Par défaut
    C'est vrai que j'ai pensé au web service... Mais je trouve que c'est un peu lourd à développer. (J'ai eu une mauvaise expérience avec eux on va dire ) Ca reste clairement une solution envisageable (même si je n'ai jamais entendu parler des web services en PHP, mais bon je suis loin de tout connaître :p)), mais je me disais qu'il y avait peut etre une solution plus simple... La sécurité n'étant pas la contrainte majeure, mais plutot la simplicité du code et sa rapidité à être mis en place...

  4. #4
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Salut,
    Une méthode plus simple encore et ne nécessitant aucune librairie externe serait de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    try {
    	URL url = new URL("http://www.developpez.com");
    	InputStream is = url.openConnection().getInputStream();
    	BufferedReader br = new BufferedReader(new InputStreamReader(is));
    	String line = null;
    	while((line=br.readLine())!=null){
    		System.out.println(line);
    	}
    	br.close();
     
    } catch (MalformedURLException e) {
    	e.printStackTrace();
    } catch (IOException e) {
    	e.printStackTrace();
    }
    Qui te permet de récupérer le contenu d'une page sur le web.
    Après, tu peux effectivement générer la réponses osu forme d'XML avec PHP, mais peut être aussi sous forme de texte si ça peut suffire ?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Points : 653
    Points
    653
    Par défaut
    Regarde du côté de nusoap pour PHP.

    L'avantage des WebServices est qu'ils sont interopérables. Si demain tu changes l'implémentation de ton client ou si tu veux autoriser un client .NET à accéder à ton service, cela ne posera aucun problème si tu as utilisé les WebServices.

    Je te recommande chaudement d'utiliser les WebServices.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 24
    Points : 20
    Points
    20
    Par défaut
    Merci djo.mos, je vais tester ta solution. Le texte pourrait effectivement suffire dans la plupart des cas, mais je récupère des types complexes de temps en temps donc le xml me semble plus approprié.

    Concernant les web services, j'en ai peut être une mauvaise image, mais leur fameuse interropérabilité m'a laissé un gout amer par le passé... Lorsque j'ai du recoder completement un web service compatible java mais qui ne passait pas avec un client .NET ... ! Donc c'était surement de ma faute, mais depuis je leur en veux :p

  7. #7
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    Cette librairie devrait t'aider :
    http://hc.apache.org/httpclient-3.x/tutorial.html
    Et oui le xml est parfait pour l'échange de données structurées et facilement manipulable en Java.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 24
    Points : 20
    Points
    20
    Par défaut
    Merci à tous pour vos réponses, ca m'a bien fait avancer !!

    Dans un premier temps, je vais partir sur le code de djo.mos qui fait exactement ce que je veux, mais je garde la librairie httpclient sous le coude ! Je ne connaissais pas, ça m'a l'air bien utile

    Merci encore !

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 57
    Points : 39
    Points
    39
    Par défaut
    mes amis est ce que je peux utiliser ce code dans java ME
    si oui comment car j ai esayé mais ne marche pas
    et merci

  10. #10
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 585
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 585
    Points : 15 578
    Points
    15 578
    Par défaut
    L'avantage des WebServices est qu'ils sont interopérables. Si demain tu changes l'implémentation de ton client ou si tu veux autoriser un client .NET à accéder à ton service, cela ne posera aucun problème si tu as utilisé les WebServices.
    J'ai du mal a voir pourquoi un fichier xml ne serait pas interopérable avec .net ou n'importe quel autre type de client lourd.

    mes amis est ce que je peux utiliser ce code dans java ME
    si oui comment car j ai esayé mais ne marche pas
    et merci
    Non ce code est fait pour du JavaSE seulement.
    Si tu as un profil MIDP, il te faut utiliser HttpConnection

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 57
    Points : 39
    Points
    39
    Par défaut
    je suis debutant dans la languge java stp tu peu m aider.
    comment le faire avec java ME ?

    et merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Client lourd Java et Mac
    Par Ceddoc dans le forum Débuter avec Java
    Réponses: 6
    Dernier message: 16/07/2013, 15h18
  2. Problème Install Client lourd java OEM 10G
    Par genio dans le forum Oracle
    Réponses: 0
    Dernier message: 19/08/2009, 15h28
  3. Réponses: 1
    Dernier message: 16/03/2009, 08h25
  4. Client Lourd Java
    Par Kalipseo dans le forum Débuter avec Java
    Réponses: 9
    Dernier message: 18/12/2008, 14h08
  5. Client lourd java et web service
    Par gs@ab dans le forum Services Web
    Réponses: 6
    Dernier message: 22/11/2006, 18h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo