osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

> ATOS installations non standards, ATOS full Java, serveur en safe_mode...
Wouf
posté 27 Jul 2004, 15:03
Message #1


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 129
Inscrit : 19-April 04
Lieu : Toulouse
Membre no 2309



Tutorial de la contribution ATOS Full Java

Le pourquoi du comment...

Cette contribution a été crée dans le but de s'affranchir de la limitation (au niveau des systèmes d'exploitations) induite par l'utilisation de binaires précompilés. En effet, sur serveur Mac (mon environnement de travail), la contribution déjà existante ne pouvait s'installer.

Dans quel cas l'utiliser ?

Il faut utiliser cette contribution dans tous les cas ou celle-ci ne fonctionnerait pas. Plus exactement, il faut utiliser cette contribution si votre serveur n'execute pas les binaires précompilés fournis par Atos et prévus pour foncitonner avec la contribution ci dessus.
Si vous êtes sous Mac (serveur) vous êtes obligés d'utiliser cette contribution.

Prérequis
  • Oscommerce MS2
    Travail réalisé sur Creload 6 sp1.1 mais censé fonctionner sur MS2
  • La contribution
    Elle est a récupérer ici : Atos Full Java
  • L'api ATOS FULL Java fournie par votre banque
    Ne pas confondre l'api fourni par la banque et ma contrib qui portent le même nom : ATOS FULL Java
  • Un environnement de développement Java (Eclipse, Xcode, etc...)
  • Un peu de patience...
Les servlets

# Késako ?

Une servlet est une application coté serveur qui fonctionne comme un CGI (a l'image de PHP ou ASP). Une servlet est codée en Java et nécessite donc un moteur de servlet pour fonctionner. Une servlet est donc écrite dans une quelconque IDE (environnement de developpement) puis compilée en un fichier .class exploitable par le moteur de servlet.

# Le moteur de servlet

Je ne sais pas si il en existe beaucoup mais l'un des principaux et le plus connu est Tomcat. Ce moteur de servlet doit impératicement être installé coté serveur sans quoi rien ne sera possible ensuite. Je ne détaillerai pas son installation d'autant plus que le site web Tomcat's Corner en parlera certainement mieux que moi !

# Compiler les servlets

Les fichiers sources des servlets sont disponible dans ma contribution et se nomment "requestservlet.java" et "responseServlet.java". Ces fichiers sont basés sur ceux fournis par l'API ATOS full Java et ont été modifiés afin de prendre en compte les bons paramêtres.
Il faut donc les ouvrir dans votre IDE pour pouvoir les compiler. Afin que la compilation reussissent il faut aussi spécifier les librairies a utiliser (framework). Ces librairies sont apipayment.jar (fourni dans l'api Atos) et servlet.jar (fourni avec Tomcat), il faut donc les ajouter au projet de façon qu'elles soient prises en compte lors de la compilation (sinon une erreur sera générée). Une fois les librairies bien spécifiées, la compilation ne devrait plus poser de problème. Il faut alors déployer les servlet.

# Deployer les servlets (avec Tomcat)

Deployer signifie "mettre en place" ou encore mettre les fichiers issues de la compilation au bon endroit avec la bonne configuration afin que le moteur de servlet puissent les executer. Encore une fois je vous renvoie vers l'excellent Tomcat's Corner, neanmoins je vais vous présenter la façon dont je m'y suis pris (pour l'instant je ne suis pas en production donc il se peut que lors d'un passage en production la mise en place de ces servlets diffèrent selon les contraintes de l'hébergeur).

J'ai placer mes fichiers selon l'architecture suivante dans le répertoire de Tomcat :
  • Tomcat
    • common
      • lib
        • servlet.jar (déjà présent)
        • apipayment.jar (à ajouter ici)
    • webapps
      • atos
        • WEB-INF (répertoire obligatoire pour servlet)
          • classes
            • request
              • requestServlet.class
            • response
              • responseServlet.class
          • web.xml
Dans le cas d'un deploiement comme ci dessus, il n'est pas nécessaire d'ajouter des lignes de configurations au fichier server.xml, par contre le fichier web.xml aura une structure bien particulière.
Ci dessous le fichier web.xml avec mes explications en rouge :
QUOTE (Code XML du fichier web.xml)
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<display-name>Payment Atos</display-name>Nom de l'application Web
<description>Servlet Java pour gérer le paiement avec le module ATOS</description>

<servlet> Servlet RequestServlet.class
  <servlet-name>request</servlet-name>son nom
  <servlet-class>request.RequestServlet</servlet-class>sa classe
  <description>requete</description>breve description
</servlet>
<servlet-mapping>Balise servent a mapper*
  <servlet-name>request</servlet-name>Servlet a mapper*
  <url-pattern>/requestAtos/*</url-pattern>Url de mapping
</servlet-mapping>
*Mapper : c'est un peu une redirection, par exemple (ci dessus) lorsque l'url du navigateur contiendra /requestAtos (ex: http://blalbalalb.com/requestAtos/blabla/test), la servlet designée par la balise <servlet-name> sera executée
<servlet>Meme shéma pour la seconde servlet...
  <servlet-name>response</servlet-name>
  <servlet-class>response.ResponseServlet</servlet-class>
  <description>reponse</description>
</servlet>
<servlet-mapping>
  <servlet-name>response</servlet-name>
  <url-pattern>/responseAtos/*</url-pattern>
</servlet-mapping>
</web-app>

( idea.gif Il va de soit que si vous copier coller ce fichier web.xml, il faudra supprimer les commentaire en rouge...)

Vous aller ainsi pouvoir tester les servlets dans votre navigateur pour verifier le bon fonctionnement du tout. Il faut bien sûr que Tomcat (ou autre moteur de servlet) soit démarré. Pour appeler la servlet depuis votre navigateur, taper :
- http://votreserveur:portTomcat/requestServlet pour la première
- http://votreserveur:portTomcat/responseServlet pour la seconde
Il ne faut pas s'attendre a voir tout marcher dessuite, si rien ne foncitonne (erreur Tomcat) reprennez le tutorial a zéro et vériier que tout soit bien fait. Repportez vous aussi au site Tomcat's Corner pour mieux comprendre le fonctionnement général des servlets.
De plus si cela fonctionne, vous ne verrez pas grand chose car les paramètres ne sont pas encore corrects, mais si vous n'avez pas modifié les sources (requestServlet.java et responseServlet.java) vous devriez voir dans les 2 cas la phrases suivante : "Test de l'API JAVA" suivie de l'erreur : "Error = java.lang.NullPointerException". Dans ce cas vous pouvez poursuivre.

# Installer la contrib dans OSCommerce

A ce stade, les servlets marchent (ou presque biggrin.gif ), il faut encore les intégrer a OSCommerce afin de leur passer les bon paramêtres. Pour installer la contribution, c'est assez classique. Il faut copier le contenu du répertoire catalog de la contribution sur le répertoire catalog de la boutique. Il faut copier les logos fournis dans l'api dans un répertoire de la boutique (images/atos). Il faut mettre dans le repertoire catalog/atos les fichiers de configuration fournis par votre banque.
Ces fichiers sont : (le numero en rouge est un numero de test, lors du passage en production, il faudra mettre le votre)





  • certif.fr.082584341411111




  • parcom.082584341411111




  • pathfile *




* Ce fichier semble pouvoir être généré automatiquement a l'installation de la contribution, mais je pense qu'il est préférable de le créer soit même


Description du fichier pathfile : (ce qu'il faut verifier ou modifier selon votre boutique est en rouge)

QUOTE (Fichier pathfile)


#########################################################################
#
# Pathfile
#
# Liste des fichiers parametres utilises par le module de paiement
#
#########################################################################

# ------------------------------------------------------------------------
# Chemin vers le repertoire des logos depuis le web alias 
# Exemple pour le repertoire www.boutique.com/catlog/images/atos
# indiquer:
# ------------------------------------------------------------------------
#
D_LOGO!http://www.boutique.com/catlog/images/atos!
#
# --------------------------------------------------------------------------
#  Fichiers parametres lies a l'api de paiement
# --------------------------------------------------------------------------
#
# fichier des  parametres de votre banque
#
F_DEFAULT!/chemin/absolu/vers/le/fichier/parcom.votrebanque!
#
# fichier parametre commercant (celui avec les chiffres)
#
F_PARAM!/chemin/absolu/vers/le/fichier/parmcom!
#
# certificat du commercant  (celui avec les chiffres)
#
F_CERTIFICATE!/chemin/absolu/vers/le/fichier/certif!
#
# --------------------------------------------------------------------------
#  end of file
# --------------------------------------------------------------------------


Les fichiers sont donc maintenant en place, il reste encore à activer la contribution dans l'administration. Il faut pour cela se rendre dans la partie admin de la boutique, vous trouverez la section Module de paiement. Parmis la liste des modules de paiements se trouve celui qu'il faut installer ("Carte de crédit"), cliquer dessus puis cliquer sur installer. Vous pourrez alors spécifier certains paramêtres importants :
  • Identifiant de Commerçant : 082584341411111 (mettre le votre lorsque vous le recevrez)
  • IMPORTANT L'IP autorisé à donner la confirmation d'achat: Adresse Ip de votre serveur (Tomcat)
  • IMPORTANT Nom ou Ip du serveur Java : localhost (si le serveur est en local) Idem qu'au dessus sinon, un nom de domaine est préferable a une ip (ex : boutique.com )
  • IMPORTANT Port de communication du serveur Java : Port sur lequel Tomcat va répondre (ex : 9006)
  • Nom de l'application pour construire la requête : Url de mapping de la requete (/atos/requestAtos pour moi)
  • Nom de l'application pour lire la réponse : Url de mapping de la reponse (/atos/responseAtos pour moi)
  • Nom du fichier pathfile : mettre le chemin complet vers votre pathfile
  • Choix du mode de fonctionnement :
    • Production : Tout fonctionne correctement, après le paiement la commande est enregistrée et le panier est vidé.
    • Demo : Le panier ne se vide pas, la commande n'est pas enregistré et le retour est fait sur la confirmation de la commande...
# Conclusion

Vous pouvez maintenant simuler un paiement, cela devrait fonctionner. J'espère ne pas avoir oublié trop de choses dans mon explication ou fait trop d'erreurs, auquel cas je corrigerai et/ou ajouterai ce qu'il faut. Si vous avez des questions n'hésitez pas.

cool.gif Have Fun !


--------------------
Pierre Rigal
Contributions :
- Paiement CyberMut ( Mon tuto )
- Paiement SPPlus ( Mon tuto )
- Paiement Atos Full Java ( Mon tuto & ma contrib)
Go to the top of the page
 

Les messages de ce sujet


Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 10th September 2010 - 14:29
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)