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

Services Web Java Discussion :

Java vers Php


Sujet :

Services Web Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut Java vers Php
    Bonjour,

    Voila j'aurai besoin de pouvoir appeler une classe php, à partir de java et ce que quelqu'un connait une méthode pour faire cela ?

    J'ai pensé à envoyer un lien via un navigateur appelé par ligne de commande mais c'est pas super.

    J'ai trouvé pour allez de php vers java (javabridge)mais pas l'inverse u_u.

    Merci d'avance

  2. #2
    Membre actif Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Points : 240
    Points
    240
    Par défaut
    Peut être déjà faudrait-il que l'on connaisse mieux le contexte.
    Java oui, mais en client serveur?

    Si c'est le cas j'aurais eut l'idée de faire dialoguer les 2 via des méthodes post et get peut être.

  3. #3
    Membre actif Avatar de coco62
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    237
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 237
    Points : 278
    Points
    278
    Par défaut
    Il me semble que tu as trouvé la réponse : le Web Service

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    Merci, de vos réponse.

    Bon je détail un peu plus. Je travail sur un planificateur de tâches, pour cela j'utilise quartz qui contient des classes qui me permet de planifier certaines actions. Mon appli est placé sur un servlet. Donc tout ça fonctionne correctement.

    Mon appli sera du coté serveur lancé par tomcat, donc j'essaye d'eviter l'ouverture d'un navigateur pour executer du php.

    Mais le problème est que les tâches sont executées sur une classe à part. La plupart de ces tâches doivent appeler des fonctions d'un logiciel en php5.

    Donc voilà. Si vous ne connaissez pas quartz je vous montre un peu le code pour que vous compreniez :p.

    Class Webapp :
    La class du servlet et initialise le planificateur de tâche.
    Les tâches ont été ajouté dans la base donnée, et son exécuter suivant les contraintes données
    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
    17
    18
    19
    20
    21
    22
     
    public class Webapp extends HttpServlet {
       private Scheduler scheduler;
     
       public Webapp()
        {
            performShutdown = true;
            scheduler = null;
        }
        public void init(ServletConfig cfg) throws ServletException
        {
            super.init(cfg);
            StdSchedulerFactory factory;
            factory = new StdSchedulerFactory();
            scheduler = factory.getScheduler();
            scheduler.start();
     
        }
        public void doGet(HttpServletRequest req, HttpServletResponse res)
    	throws ServletException, IOException {
        }
    }
    Exemple d'une tâche :

    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
    17
    18
    public class jobEdition implements Job  {
     
        public jobEdition() {
     
        }
     
        public void execute(JobExecutionContext context) throws
        JobExecutionException {
            try {
                JobDataMap map = context.getJobDetail().getJobDataMap();
                String nom = context.getJobDetail().getName();
     
                // C'est ici que je dois appeler les fonctions php
     
            } catch (Exception e) {
            throw new JobExecutionException(e);
            }
        }

    Sinon j'ai trouvé java bridge pour allez de php vers java, bien que je n'ai pas encore tester pour le moment. Car ce qui me perturbe c'st de java vers php.

    Egalement les fonctions POST et GET renvoi que des pages statiques non ?

    Sinon je go voir des tuto sur les web service, je suis pas sur d'en saisir le principe :p

    Si je n'ai pas été assez clair sur un point n'hesitez pas
    Merci

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    J'ai lu ce tutorial :
    http://jp-clair.developpez.com/artic...E/webServices/

    Et je me demande si je pourrais l'intégrer à mon application.

    Est t'il possible de créer un serveur SOAP en java ? c'est encore un peu flou

  6. #6
    Membre actif Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Points : 240
    Points
    240
    Par défaut
    Tu as un exemple de WebService ici avec java:
    http://karamimed.developpez.com/j2ee/tutoriels/axis/

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    Merci gentille elfette de la nuit ^^,


    bon on peut donc avoir un serv Axis en java, un client php également. Mais peut on le combiner avec un servlet ? et comment circule les info entre le serveur et le client, via les fichiers xml créé ?

  8. #8
    Membre actif Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Points : 240
    Points
    240
    Par défaut
    Si j'ai bien compris et relu ton problème vite fait.
    Vu que tu souhaite faire communiquer java avec php.
    Il faut faire un WebService (wdsl...) coté php pour que java puisse ensuite demander les informations nécessaires.

    Après que ton client java, soit lourd en application Swing, ou application Serveur tomcat, ca ne changera rien au code.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    Bon je me lance la dedans ^^, donc si j'ai bien compris il faut que je fasse un serveur php avec SOAP(j'ai pas trouvé d'exemple avec axis) et un client coté java, qui vont communiqué par l'intermediaire d'un fichier wsdl qui est un fichier xml.

    Question que je me pose lors de l'éxecution de la fonction php, ça va ouvrir le navigateur ? où ça sera transparent ? (ce qui m'arrangerais :p)

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    bon je bloque deja sur le serv SOAP, pas moyen de le trouver sur le net u_u, les liens que je trouve sont morts.

    Il y a un moyen avec Axis de faire un serveur php ?

  11. #11
    Membre actif Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Points : 240
    Points
    240
    Par défaut
    Citation Envoyé par deadstar62
    Question que je me pose lors de l'éxecution de la fonction php, ça va ouvrir le navigateur ? où ça sera transparent ? (ce qui m'arrangerais :p)
    Pour moi oui c'est complétement transparent.

    Reprend le tutoriel, et fais le pas à pas: http://jp-clair.developpez.com/artic...bServices/#LII

    A priori, qu'on me contredise sinon, mais tu n'as pas besoin d'axis pour ton problème.

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    merci schneidb,

    c'est ce que j'ai voulu faire mais aucun moyen de trouver où télécharger SOAP. Les liens sous apache sont tous morts...

  13. #13
    Membre actif Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Points : 240
    Points
    240
    Par défaut
    Ben essayer peut être easyphp une solution clé en main.

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    C'et bon j'ai trouvé soap ^^,

    http://pear.php.net/

    IL y a une doc en francais en plus :p. Bon je vais m'y mettre je vous tiens a courant

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    J'ai essayé le tutorial que mais je galere pas mal,

    j'ai refait le client en java, et j'ai des erreurs à la compilation.

    L'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Exception in thread "main" java.lang.UnsatisfiedLinkError: com.sun.midp.main.Configuration.getProperty0(Ljava/lang/String;)Ljava/lang/String;
            at com.sun.midp.main.Configuration.getProperty0(Native Method)
            at com.sun.midp.main.Configuration.getProperty(Configuration.java:32)
            at com.sun.midp.midlet.Scheduler.getScheduler(Scheduler.java:138)
            at com.sun.midp.midlet.MIDletState.<init>(MIDletState.java:302)
            at javax.microedition.midlet.MIDletProxy.<init>(MIDletProxy.java:32)
            at javax.microedition.midlet.MIDlet.<init>(MIDlet.java:64)
            at soapclient.SoapClient.<init>(SoapClient.java:55)
            at soapclient.Main.main(Main.java:28)
    Java Result: 1
    Classe main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public class Main {
        public static void main(String[] args) {
            SoapClient sc= new SoapClient();
            try {
                sc.startApp();
                sc.afficherResultat();
                sc.pauseApp();
                sc.destroyApp(true);
            } catch (MIDletStateChangeException ex) {
                ex.printStackTrace();
           } 
       }
    }
    Pour la classe Soap client j'ai repris exactement celle du tutorial en modifiant le chemin pour le server.php

  16. #16
    Membre actif Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Points : 240
    Points
    240
    Par défaut
    Apparament il s'agit d'une erreur d'execution, mais je pense que ton problème vient de la ligne 28 du main laquelle?

    L'exception lancée est une UnsatisfiedLinkError:

    Thrown if the Java Virtual Machine cannot find an appropriate native-language definition of a method declared native.
    http://java.sun.com/j2se/1.5.0/docs/...LinkError.html

    En posant ton problème précis sur le client java soap, tu aurais peut être des réponses plus pertinentes, sauf si la source de l'erreur ne provient pas de ton serveur php. (j'espère que non).

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    l'erreur vient d'ici :

    Fichier SoapClient.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public SoapClient() 
    {
            super();      // ici
    }
    Je ne sais pas si ça vient du serveur, qd je lance la page serveur.php, il n'y a pas d'erreur juste un message comme quoi il ne prend pas en compte les méthode GET.

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    Petite mise à jour pour les erreurs, J'ai essayé d'utiliser Toolkit comme il etait conseillé dans le tutorial, et je récupère cette erreur dans la console

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Project settings saved
    Building "SoapClient"
    Error preverifying class org.kobjects.xmlrpc.Driver
        VERIFIER ERROR org/kobjects/xmlrpc/Driver.main([Ljava/lang/String;)V:
    Cannot find class java/io/FileReader
    Build failed
    J'ai bien inclu la librairie et je vois pas trop comment régler ça...

    J'ai trouvé comment faire pour ca, il suffit de la supprimer de la librairie java soap. Bref c'etait trop beau pour que cela fonctionne. Maintenant j'ai ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Building "SoapClient"
    Error preverifying class org.ksoap2.servlet.SoapServlet
        java/lang/NoClassDefFoundError: javax/servlet/http/HttpServlet
    Build failed
    J'ai essayé de supprimer la class soapservlet, mais j'ai eu une erreur encore plus tordu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Building "SoapClient"
    Error preverifying class com.sun.amms.control.camera.CameraCtrl
    ERROR: native methods should not appear
    Build failed

  19. #19
    Membre actif Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Points : 240
    Points
    240
    Par défaut
    Tu as cette erreur quand? execution ou compilation.

    Si c'est à l'execution, il faut penser de vérifier d'ajouter la librairie au classpath.

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 42
    Points
    42
    Par défaut
    A la compilation, j'ai cherché un peu et je n'ai pas créé un projet MIDP, donc je vais voir avec ca ...

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Android/Java vers Php
    Par Estérésis dans le forum Langage
    Réponses: 9
    Dernier message: 31/07/2014, 10h45
  2. JSON Java vers PHP
    Par rimas2009 dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 16/12/2010, 17h00
  3. [XML] [HttpURLConnection] Code Java vers PHP
    Par Kaldyris dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 19/03/2010, 17h11
  4. Envoi de fichier java vers php
    Par legentil dans le forum Windows
    Réponses: 1
    Dernier message: 16/11/2007, 17h28
  5. un resultat JAVA ver PHP
    Par satelsat dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/09/2007, 18h49

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