Problème d'utilisation de JApplet qui accède à une base de données sur une application Web à l'aide de Netbeans 6.5.1

StackOverflow https://stackoverflow.com/questions/808988

Question

J'ai créé un JApplet à l'aide de Netbeans 6.5.1 qui accède à une base de données. Lorsque le programme est exécuté seul, il fonctionne parfaitement. Le problème est que lorsque vous essayez de le mettre en ligne à l'aide d'une application Web dans Netbeans, il n'aura pas accès à la base de données. Quelqu'un m'a dit que le problème était que la sécurité Java ne vous permettrait pas de le faire. Est-ce correct? Comment puis-je résoudre ce problème? Merci.

Était-ce utile?

La solution

Comme déjà mentionné, une applet non signée ne peut établir une connexion réseau avec l'hôte à partir duquel l'applet est originaire. Cependant, si la base de données est hébergée sur un serveur différent de celui de l'applet d'origine, vous devrez faire signer l'applet. Si l'application n'est pas destinée à une utilisation en production, vous pouvez auto-signer l'applet (non approprié pour une utilisation en production lorsque la signature doit être effectuée par une autorité de certification de confiance. Les autorités de certification facturent généralement des frais pour le service de validation des informations d'identification de leurs clients. ) Toutefois, à des fins de test et de démonstration, vous pouvez créer un certificat auto-signé. Avec les certificats auto-signés, le navigateur envoie à l'utilisateur un avertissement indiquant que les informations fournies dans un certificat auto-signé n'ont pas été validées par un tiers de confiance (autorité de certification).

Pour signer automatiquement l'applet, jetez un coup d'œil aux liens suivants:

http://java.sun.com/developer/onlineTraining /Programming/JDCBook/signed.html

http: // www-personal. umich.edu/~lsiden/tutorials/signed-applet/signed-applet.html

Les autres types de pilotes JDBC à garder à l’esprit sont les suivants. Les pilotes de types 1 et 2 ne peuvent pas être utilisés dans applet en raison de leur dépendance au code binaire natif. Les types 3 et 4 sont ceux que vous devriez utiliser pour vous connecter à la base de données depuis un applet.

La meilleure solution consiste à NE PAS établir de connexion à la base de données à partir d'un applet (si possible), mais plutôt utiliser une application côté serveur pour se connecter à la base de données pour le compte de l'applet.

Autres conseils

comme l'a souligné Clint, une applet est uniquement autorisée à se connecter à son serveur d'origine. Pour contourner ce problème, vous pouvez signer votre applet avec un certificat émanant d'une autorité racine, mais le coût du certificat est de 200 à 400 USD / an.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top