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

API standards et tierces Android Discussion :

Connexion à un serveur Oracle via une appli Android


Sujet :

API standards et tierces Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 18
    Points : 12
    Points
    12
    Par défaut Connexion à un serveur Oracle via une appli Android
    Bonjour à toutes et à tous,

    Je m'arrache les cheveux depuis 2 jours en essayant de me connecter une base de données Oracle depuis une application Android que je développe.

    Pour être plus précis : mon application doit aller chercher des informations sur un serveur Oracle sur le réseau local. Elle va stocker les informations récupérées dans la base SQLite d'Android. L'utilisateur passera ensuite dans un mode "non-connecté", et modifiera sans doute les informations contenues dans l'application. Une fois de retour sur le réseau local, les informations modifiées seront synchronisées avec la base de données Oracle.

    Mon code est le suivant, il tient en 2 classes distinctes (pour être propre) : une classes OracleDB (contenant toute la connexion à la BDD via JDBC) et une classe JDBCAndroid qui sert de "launcher" avec la méthode onCreate().

    OracleDB : http://pastebin.archlinux.fr/432146
    JDBCAndroid : http://pastebin.archlinux.fr/432148 (avec le logcat des erreurs).


    Mon projet contient bien l'archive ojdbc14.jar, mais comme vous pouvez le voir, toutes les classes ne sont pas reconnues. Je développe en 2.3.3, mais il y a les mêmes erreurs en 2.2 (j'ai testé). L'application en Java 100% (même code) fonctionne et arrive à se connecter à la BDD.

    Si certains d'entre vous ont réussi à se connecter à une BDD Oracle via le réseau, je serai ravi de savoir comment ; et si certains voient comment corriger l'erreur, je les en remercie.

    Autres remarques : j'ai trouvé une "solution" dans un produit d'Oracle : Oracle Database Lite, mais j'ai pas du tout compris comment ça marchait, même après avoir potassé une bonne partie de leur doc (immonde d'ailleurs ). Donc, idem, je suis preneur d'explications

    Merci par avance !

  2. #2
    Membre confirmé
    Homme Profil pro
    IUT Informatique
    Inscrit en
    Mars 2011
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : IUT Informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 412
    Points : 486
    Points
    486
    Par défaut
    Salut,

    Normalement pour se connecter à une base de donnée il est conseillé de faire appel à une page php qui se connecte et qui effectuera les requêtes dont tu as besoin, tu récupère les résultats, et tu traite comme bon te semble.

    En tout cas c'est ce qui est conseiller de faire pour une BDD MySQL, et je pense que ca doit être pareil pour Oracle.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par malgache Voir le message
    Salut,

    Normalement pour se connecter à une base de donnée il est conseillé de faire appel à une page php qui se connecte et qui effectuera les requêtes dont tu as besoin, tu récupère les résultats, et tu traite comme bon te semble.

    En tout cas c'est ce qui est conseiller de faire pour une BDD MySQL, et je pense que ca doit être pareil pour Oracle.
    Salut malgache, merci beaucoup pour ta réponse.

    Alors, la solution web service est ressortie pas mal des endroits où j'ai cherché la solution à mon problème. Je la garde sous le coude, mais c'est la dernière solution que je cherche à appliquer, car elle implique l'installation et le déploiement d'un serveur web chez le client en plus du serveur Oracle. Cela demande également plus de travail car il faut développer le webservice également.

    Donc, tu me confortes dans l'idée que le webservice fonctionne bien. N'en ayant jamais fait, j'avoue que j'ai du mal à voir comment installer tout ça.

    Néanmoins, cela m'aiderait grandement si j'arrivais à me connecter à la BDD directement depuis l'application pour diverses raisons (utilisation d'une API déjà écrite et qui servirait pour une fois par exemple... )

  4. #4
    Membre confirmé
    Homme Profil pro
    IUT Informatique
    Inscrit en
    Mars 2011
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : IUT Informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 412
    Points : 486
    Points
    486
    Par défaut
    T'as pas un serveur web pour stocker toi-même le php?

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par malgache Voir le message
    T'as pas un serveur web pour stocker toi-même le php?
    Pour faire les tests oui. Mais une fois le produit fini, il se mettra à fonctionner chez différents clients (grosses structures), chacun avec sa propre BDD locale (non accessible depuis l'extérieur). Ça signifie donc 1 client (personne physique ^^ ) = 1 serveur Oracle + 1 serveur web. Donc à déployer et à maintenir surtout, ça fait pas mal.

    Donc c'est pas le nombre de serveur pour stocker le PHP qui pose problème, c'est plus les choses en plus que demande la mise en place de cette solution.

    C'est pourquoi, une connexion directe à la BDD Oracle serait parfaite. De plus, je trouve quand même que monter un serveur web pour être utilisé uniquement sur le réseau local, ça fait un peu "too much" xD, même si sans doute nécessaire

  6. #6
    Membre confirmé
    Homme Profil pro
    IUT Informatique
    Inscrit en
    Mars 2011
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : IUT Informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 412
    Points : 486
    Points
    486
    Par défaut
    Ah oui si chaque client a sa propre BDD ça change tout lol.

    Ben à mon avis l'idée que tu as trouvé sur le net doit être la seule.

    Bon courage en tout cas ^^

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

Discussions similaires

  1. Ajouter des données dans un serveur de données MySQL via une application Android
    Par af.zakaria dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 30/07/2012, 16h25
  2. Connexion a pentaho BI via une bd (ORACLE)
    Par clemsso dans le forum Pentaho
    Réponses: 1
    Dernier message: 15/07/2011, 14h09
  3. connexion oracle d'une appli avec WIFI
    Par lca94 dans le forum Connexions aux bases de données
    Réponses: 2
    Dernier message: 10/01/2010, 13h14
  4. Aide pour une connexion à sql serveur 2005 via Delphi 7
    Par fabpan dans le forum Bases de données
    Réponses: 2
    Dernier message: 10/11/2009, 20h52
  5. Aide pour une connexion à sql serveur 2005 via Delphi 7
    Par fabpan dans le forum Développement
    Réponses: 0
    Dernier message: 10/11/2009, 15h56

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