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

JDBC Java Discussion :

Applet et JDBC


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 76
    Points : 35
    Points
    35
    Par défaut Applet et JDBC
    bonjour a tous
    j ai une applet qui doit se connecter a une base de données , mais je sais pas ou mettre le driver jdbc et comment l intégrer dans le code html , j ai fait ca pour l instant mais ca ne marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    applet  CODEBASE="."  ARCHIVE="mysql-connector-java-5.1.14-bin.jar" code="mainxs.class" width="620"
    height="500"   align="center">
    </applet>
    j ai met le fichier .jar dans le même dossier

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Bonsoir,

    Si par "le driver" tu veux dire le mysql_jdbc pour la connexion à la base, il faudra que tu fasses l'appel au driver adéquat dans ton code java et inclure le jar du driver au classpath de ton applet.

    Dans le code html tu mets dans ARCHIVE le jar de l'applet.

    Peux tu poster un bout de code de ton applet ou tu communique avec la base de données ?

  3. #3
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Ainsi éventuellement que les messages d'erreurs que vous auriez.
    Aussi, êtes vous sur que l'utilisateur aura accès à la base de données depuis son poste client. En général, les bases de données n'autorisent, pour tout un tas de raisons sécurité, que l'accès depuis certaines machines bien définies, pas depuis l'extérieur.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    bonjour , pour commencer mon application avant de la transformer on applet marcher parfaitement (accède a la base de données )
    - quand j execute l applet dans eclips tout marche nickel (acces a la bdd et ...)
    - je travail en local (wampserver ) donc je pense que l il y pas de problème d accès
    - mais j ai pas compris , je met quoi dans Archive : le jar de driver jddbc ou le jar de l'applet ?
    j ai chercher sur le web , il y a beaucoup de tuto qui explique comment installer jdbc et se connecter mais pas avec une applet ! alors si vous avez un lien ?

  5. #5
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Donnez vos message d'erreur, là on a pas la moindre idée de ce qui vous pose problème. Ca peut être un problème de droit lié à la sandbox, un problème d'accès à la base de donnée, un problème de classes non trouvée, un problème de lecture de fichier. Bref ca peut être tout et n'importe quoi.

  6. #6
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Donnez vos message d'erreur, là on a pas la moindre idée de ce qui vous pose problème. Ca peut être un problème de droit lié à la sandbox, un problème d'accès à la base de donnée, un problème de classes non trouvée, un problème de lecture de fichier. Bref ca peut être tout et n'importe quoi.
    je sais pas de quel messages d 'erreur vous parler , car j ai pas d'erreurs quand j exécute l'applet dans eclips, concernant les erreur dans le navigateur , j arrive pas a les afficher , mais se que je voudrai savoir c'est simplement que es que on met dans le code HTML de pour une applet avec accès a la base de données (jdbc) ?

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    oui on peux faire une applet qui accède à une base de donnée, non ca ne se fait pas habituellement. Il suffit d'afficher la console java pour avoir vos message d'erreurs, si tant est que vous avez traité correctement vos exceptions.

  8. #8
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    voici les erreurs :


    com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    .
    .
    .
    .

    Caused by: java.net.SocketException: java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:3306 connect,resolve)
    at com.mysql.jdbc.StandardSocketFactory.unwrapExceptionToProperClassAndThrowIt(StandardSocketFactory.java:405)
    at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:266)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292)
    ... 50 more

  9. #9
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    votre appelt est limitée dans la sanbox par défaut. Vous n'avez pas les permission de vous connecter à un autre serveur que celui qui a émis l'applet. Exemple, si votre applet tourne sur une page située à http://serveurMachin/, vous ne pouvez vous connecter par socket qu'aux ports de serveurMachin, et pas à localhost.

    Soit vous faites tourner votre serveur web sur le même serveur que votre serveur mysql, soit vous devez faire sortir l'applet de la sanbox, ca veux dire obtenir un certificat de signature de code valide, signer l'applet et demander à l'utilisateur d'autoriser l'applet à accéder à toute la machine hote.

  10. #10
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    bonjour ,
    alors voila ce que j ai fait mais j ai toujours les même erreurs dans la console java.
    j ai cree un jar de mon apllet MonApp.jar.
    j ai signer MonApp.jar ce qui fait qu 'exécution de l applet il demande l’autorisation .
    voila ce que j ai met dans le code html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <applet  CODEBASE="." ARCHIVE="MonApp.jar" code="mainxs.class" width="620"
    height="500"  >
    </applet>
    alors qu'es qui ne va pas ?

  11. #11
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    avez vous bien tout (y compris les autres librairies dont elle dépenderais) signé correctement? Quand une applet est correctement signée, il n'est pas possible d'avoir un java.security.AccessControlException

  12. #12
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    je sais pas ,
    j ai mon applet qui est dans un seul fichier .java que j archiver en .jar puis j ai signer le jar .
    quel autres librairies je doit signer ?
    j ai aussi essayer avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.setSecurityManager(null);
    mais ca bloque tout l applet ne s'affiche pas

  13. #13
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    l'intégarlité des librairies que vous utilisez sont à signer. Ca inclut les drivers mysql. le setSecurityManager ne sert à rien.
    A noter que, de mémoire, les librairies mysql sont déjà signée. Vous devez enlever la signature pour mettre la votre.

  14. #14
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 76
    Points : 35
    Points
    35
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    l'intégarlité des librairies que vous utilisez sont à signer. Ca inclut les drivers mysql. le setSecurityManager ne sert à rien.
    A noter que, de mémoire, les librairies mysql sont déjà signée. Vous devez enlever la signature pour mettre la votre.
    es que je doit signer tout les packages importés ?
    et y a t il moyen de le régler le probleme en modifiant le fichier java.policy.applet ?

  15. #15
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par ssk2510 Voir le message
    es que je doit signer tout les packages importés ?
    Pour sortir de la sandbox tout le code doit être signé, et avec la meme clé. Sinon les bout de code pas signée/signé avec un signature différente n'auront eux pas les droit requis (exemple: le driver ne pourra pas ouvrir un socket alors que votre code principal oui)
    et y a t il moyen de le régler le probleme en modifiant le fichier java.policy.applet ?
    non, pour que les fichier policy mis dans l'applet soient pris en compte, il faut que cette applet soit signée correctement

    Le principe là étant
    1) j'ouvre la sandbox en montrant patte blanche (signature)
    2) je restreint à nouveau avec mon propre policy ce que je peux faire (pour éviter qu'une défaillance de mon applet mette le boxon sur le pc du client)

  16. #16
    Membre du Club
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Avril 2011
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2011
    Messages : 139
    Points : 65
    Points
    65
    Par défaut
    Salut ssk2510

    stp si t'as trouvé la solution ? pourrais tu me l'expliqué de A à Z stp car je suis dans la méme galére que toi

    Cordialement

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

Discussions similaires

  1. Applet, accès JDBC et la sécurité
    Par jejeman dans le forum JDBC
    Réponses: 2
    Dernier message: 07/05/2015, 09h20
  2. Applet et JDBC
    Par libery dans le forum Applets
    Réponses: 0
    Dernier message: 21/05/2009, 16h58
  3. Réponses: 1
    Dernier message: 15/04/2008, 14h03
  4. Applet Connection jdbc
    Par osoumayaj dans le forum Applets
    Réponses: 2
    Dernier message: 08/05/2006, 13h06
  5. Réponses: 7
    Dernier message: 01/07/2005, 07h43

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