Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Nouveau Membre du Club
    Inscrit en
    août 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : août 2009
    Messages : 23
    Points : 36
    Points
    36

    Par défaut 4D ODBC Driver v12 et ASP.Net

    Bonjour à tous,

    J'ai plusieurs soucis avec le drivers ODBC 4D v12. Je dois développer un site internet en ASP.Net 4.0 utilisant des données d'une base 4D mais il y a beaucoup de soucis.

    Pas de soucis avec l'installation du drivers, après test, j'ai un beau "SUCCESS" réjouissant.

    Mais voici les problèmes rencontrés :

    Problème 1

    Sur une page lambda, Default.aspx, j'appelle une méthode Y qui me retourne les résultats d'un select simple (ex : "select id from customer limit 10"). cette méthode ouvre un objet OdbcConnection puis le ferme proprement (Close + Dispose), de même pour les OdbcCommand et OdbcReader. Je lance cette page une fois, pas de souci, mes données s'affichent correctement. J'appuie sur F5 pour rafraîchir ma page, j'ai un beau message d'erreur qui vient de l'ouverture de la connexion ODBC : "ERROR [08001] Client unable to establish connection".

    Quelqu'un aurait-il une explication à ce phénomène ?

    Ma conclusion est que la fermeture de la connexion précédente ne s'est peut être pas effectuée correctement ou n'est pas terminée mais je n'ai aucun moyen de le vérifier et donc de m'adapter convenablement...

    Problème 2

    Que nenni, je n'abandonne pas, je me dis qu'il doit bien y avoir une solution même un peu sale. Je crée alors une variable globale dans ma couche d'accès aux données côté .Net, avec le pattern Singleton, qui va ouvrir la connexion ODBC une fois pour ne "jamais" la refermer (i.e. ne la refermer qu'au recycle de l'ApplicationPool IIS ou un restart du site ou de IIS).
    Ici, beaucoup moins de soucis, voir aucun jusqu'à aujourd'hui (1 semaine de requêtage intense !!) où j'ai de beaux messages "Failed to authenticate" et autres messages d'erreurs.

    Dans ce 2ème cas, y a-t-il un moyen de tracer l'erreur côté 4D ? De comprendre ce qu'il se passe entre le driver ODBC et le serveur ?

    En gros, si quelqu'un a déjà fait l'expérience d'un site ASP.Net en n-tiers avec une couche d'accès aux données propres et avec une connexion ODBC à 4D, j'aimerai avoir des astuces ou un retour d'expérience autour de la gestion de la connexion car ça m'a l'air sacrément mal fichu ou du moins compliqué avec le peu de doc' sur le web et de sujets sur les forums...

    Merci d'avance.

  2. #2
    Membre actif
    Inscrit en
    mai 2007
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : mai 2007
    Messages : 153
    Points : 171
    Points
    171

    Par défaut

    Bonjour,

    Je ne connais pas ASP donc je ne me prononcerais pas sur cette partie.

    Passes tu par une source de données ?

    Pour tenter d'isoler l'origine du problème, as tu essayé avec un autre outil de faire des connexions ODBC (Excel par ex.) ?

  3. #3
    Nouveau Membre du Club
    Inscrit en
    août 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : août 2009
    Messages : 23
    Points : 36
    Points
    36

    Par défaut

    Bonjour,

    Merci pour cette réponse.

    Nous avons configuré une source de données ODBC avec le driver adapté (v12, comme le serveur 4D).

    Nous avons pris contact avec le support 4D qui n'avait pas de solution à proposer sur ce problème mais qui nous ont conseillé de nous tourner vers les web-services 4D qui sont plus adaptés.

    J'ai déjà des connexions ODBC vers du Excel sur ce site et n'ai jamais rencontré de tel difficultés. C'est vraiment lié à la plateforme 4D et à ses spécificités.

    De plus, après quelques tests supplémentaires, l'hypothèse principale concernant le problème 1 est la clôture de la connexion ODBC qui s'effectue avec une latence importante côté 4D entre l'affichage de 2 pages web successives.

    Nous allons essayer la solution par web-services pour voir ce que ça donne. Je répondrai pour communiquer les résultats de tout cela, ça pourra toujours servir à d'autres têtes brûlées qui voudraient tenter la même chose !

  4. #4
    Nouveau Membre du Club
    Inscrit en
    août 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : août 2009
    Messages : 23
    Points : 36
    Points
    36

    Par défaut

    Suite aux différents tests effectués et à la mise en production du projet pour lequel il y avait une connexion à 4D a effectuer, la solution par webservice semble bien plus adaptée même si pour le coup, elle nécessite d'être développée par un développeur 4D. Mais ça fonctionne sans souci.

    Je note le sujet comme étant résolu.

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •