Envoie données de servlet vers script php

Résolu
marwan-poste Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je me demande comment envoyer des données à partir d'un servlet vers un script php.
Note:je peux pas convertir les fonctionnalités de script php en Java.C'est un module développer en php.
Exemple statique:
$descQuery = array(
'query' => 'pushCommandeSHA1',
'order_ref' => 'Ref_Commande1',
'email' => 'mich.jean@hotmail.fr',
'lastname' => 'Mich',
'firstname' => 'Jean',
'order_date' => '2015-05-22 07:55:00', 
'delay' => 0, 

);

Merci d'avance.
A voir également:

6 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Je ne connais pas PHP, alors de quel manière ce script doit il être appelé ?
C'est une URL vers un serveur PHP, avec quel format ?
De plus est-ce que le résultat doit revenir vers la servlet ou être affiché directement par la page PHP ?
0
marwan-poste Messages postés 40 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

En fait,En cliquent sur un bouton , la servlet s'exécute et return la page JSP souhaité.==> c'est bon
Mnt, je veux intégré le module développer en php en arrière-plan avec un retour code de type entier (1,2,3 ou 4).
où je le met ici comme paramètre:
response.sendRedirect("ma_page.jsp?retour="+code);
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Dans ce cas fais juste un appel au service PHP comme ceci :

URL phpService = new URL("http://phpService.php");
Scanner sc = new Scanner(phpService.openStream());
String code = sc.nextLine();
sc.close();
0
marwan-poste Messages postés 40 Date d'inscription   Statut Membre Dernière intervention  
 
comment je peux passer les donnes comme paramétres?
normalment comme un simple url ? c'est ca?
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Tout dépend comment est construit le service PHP, si tu dois faire un GET tu peux effectivement passer les paramètres à l'URL : http://phpService.php?a=1&b=2

Si ton service PHP fonctionne sur un POST ou autre il faudra utiliser des HttpURLConnection (un peu plus compliqué).
0
marwan-poste Messages postés 40 Date d'inscription   Statut Membre Dernière intervention  
 
normalement il est défini par défaut comme statique

$descQuery = array(
'query' => 'pushCommandeSHA1',
'order_ref' => 'Ref_Commande1',
'email' => 'mich.jean@hotmail.fr',
'lastname' => 'Mich',
'firstname' => 'Jean',
'order_date' => '2015-05-22 07:55:00', 
'delay' => 0, 

);

et à moi de faire le GET ou POST
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Du coup fais plutôt un GET, c'est plus simple pour être appelé :-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
marwan-poste Messages postés 40 Date d'inscription   Statut Membre Dernière intervention  
 
oups!!
Pour le Url
URL phpService = new URL("http://phpService.php");

en faite, je suis sous netbeans & tomcat (http://localhost:8084/mon_projet)
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
NetBeans et Tomcat c'est pour la partie Java. Ton service PHP doit être hébergé sur un serveur PHP... Tu ne peux pas faire tourner du PHP sur un serveur Java !
Donc ta servlet sur localhost:8084 si tu veux, mais ton PHP doit être ailleurs...
0
marwan-poste Messages postés 40 Date d'inscription   Statut Membre Dernière intervention  
 
oups...
c'est difficile de convertir ce csript php en java ?!

$ID_WEBSITE="idWebsite";
$SECURE_KEY="secureKey";
$descQuery = array(
'query' => 'pushCommandeSHA1',
'order_ref' => 'refCommande',
'email' => 'emailClient',
'lastname' => 'nomClient',
'firstname' => 'prenomClient',
'order_date' => 'dateCommande', // Format YYYY?MM?JJ HH:MM:SS
'delay' => 'delaiAvantEmissionAvis', // 0=Immediatement / `n' jours compris entre 1 et 30 jours

'sign' => ''
);
$descQuery['sign']=SHA1($descQuery['query'].$descQuery['order_ref'].$descQuery['email'].$descQuery['lastname'].$descQ
uery['firstname'].$descQuery['order_date'].$descQuery['delay'].$SECURE_KEY);
$encryptedNotification=http_build_query(
array(
'idWebsite' => $ID_WEBSITE,
'message' => AC_encode_base64(serialize($descQuery))
)
);
$postCommande = array('http' =>
array(
'method' => 'POST',
'header' => 'Content?type: application/x?www?form?urlencoded',
'content' => $encryptedNotification
)
);
$contextCommande = stream_context_create($postCommande);
$message= file_get_contents(`http://www.avisverifies.
com/index.php?action=act_api_notification_sha1', false, $contextCommande);

0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
"c'est difficile de convertir ce csript php en java ?"
C'est toi qui a dit que tu ne voulais pas...
Note:je peux pas convertir les fonctionnalités de script php en Java.
Comme je n'y connais rien en PHP, je ne sais pas exactement ce que fait ce code... mais vu ce que je devine, il y aura sûrement 2 ou 3 trucs un peu pénible en Java, mais rien d'impossible.
0