2013-02-06 1 views
1

Je souhaite envoyer des messages électroniques à partir d'une application JBoss 7. Le serveur SMTP a besoin d'une connexion TLS avec un certificat auto-signé. Si j'essaye d'envoyer un courrier électronique, j'obtiens une exception SSLHandshakeException parce que le certificat de serveur ne peut pas être vérifié. Pour corriger ceci j'ai ajouté ceci: http://springinpractice.com/2012/04/29/fixing-pkix-path-building-issues-when-using-javamail-and-smtp/ (mettant le certificat de serveur de SMTP dans un fichier de truststore de java)Définition du bon fichier de clés certifiées dans JBoss 7

Mon problème est maintenant comment placer le dossier de truststore à JBoss 7?

Je sais à stackoverflow et sur d'autres forums il y a plusieurs réponses pour ce problème. Mais je n'ai pas trouvé le bon.

Je l'ai déjà essayé: followings

  • ajoutant JAVA_OPTS="$JAVA_OPTS -Djavax.net.ssl.trustStore=/home/stewert.c-on/data/projects/keystore/devel.truststore -Djavax.net.ssl.trustStorePassword=123456" à:
    • jboss-as-7.1.1.Final/bin/standalone.conf
    • jboss-as-7.1.1. finale/bin/domain.conf
    • jboss-as-7.1.1.Final/bin/appclient.conf
  • ajouter <jsse keystore-password="123456" keystore-url="/home/stewert.c-on/data/projects/keystore/devel.keystore" truststore-password="123456" truststore-url="/home/stewert.c-on/data/projects/keystore/devel.truststore"/> à jboss-as-7.1.1.Final/standalone/configuration/standalone.xml

Mais si je vérifie lors de l'exécution de la variable d'environnement système avec « System.getProperty ("javax.net.ssl.trustStore") «Je reçois dans tous les cas null!

Mon environnement:

  • Linux
  • JBoss 7.1
  • JDK
  • Je commence JBoss à l'intérieur de l'éclipse Juno

Tout le monde sait ce qui se passe mal? Où dois-je définir le fichier de clés certifiées?

Merci, Steffen

Répondre

4

Quelqu'un a demandé sur le forum JBoss "javax.net.ssl.trustStore - only way to specify client trust?", et la réponse est essentiellement "oui".

Leur approche consistait à définir cela dans un élément system-properties dans le fichier de configuration XML du serveur, ce qui me semble être la meilleure solution. Mieux que d'arracher dans les fichiers de configuration d'exécution!

+0

OUI! C'est tout! Je suis nouveau avec JBoss (passer de glassfish à JBoss actuellement) et donc je ne savais pas que je pouvais définir les propriétés du système dans le fichier standalone.xml. Merci beaucoup! – Steffen

Questions connexes