Comment appliquer un Axe Client pour l'utilisation de TLSv1.2 protocole

Un tiers de notre application est d'intégrer avec a récemment apporté des changements à leur niveau de sécurité des protocoles. En bref, Mon Axe client doit maintenant envoyer des appels à l'aide de TLSv1.1 ou TLSv1.2.
J'ai vu d'autres posts à ce sujet, avec quelques bonnes idées:

  1. ici
  2. ici.

Après avoir fait ces changements dans le code, j'ai déclenché l'appelle à nouveau,
J'ai utilisé l'outil capture pour surveiller le paquet envoyé, et je les vois encore dans la couche SSL le protocole utilisé est TLSv1.

le paquet extrait de

ce que je fais mal?

c'est de cette façon, j'ai mis mon nouveau SocketSecureFactory:

AxisProperties.setProperty("axis.socketSecureFactory", MyTLSSocketSecureFactory.class.getName());

alors que MyTLSSocketSecureFactory est:

public class MyTLSSocketSecureFactory extends JSSESocketFactory {
    public MyTLSSocketSecureFactory(Hashtable attributes) {
        super(attributes);
    }

    @Override
    public Socket create(String host,int port,   StringBuffer otherHeaders,BooleanHolder useFullURL)
              throws Exception{
        Socket s = super.create(host, port, otherHeaders, useFullURL);
        ((SSLSocket)s).setEnabledProtocols(new String[] {"TLSv1.1", "TLSv1.2"});
        return s;
    }
}

serait vraiment apprécions tous les commentaires,
merci.

J'ai exactement le même problème - le 3'rd partie serveur a commencé à accepter uniquement les TLS 1.1 ou 1.2 les connexions depuis la nuit dernière, sans notification préalable. Je suis à l'aide du JDK 6 u 35, Axis 1.4. Essayé avec le ci-dessous décrit une solution, mais il ne fait aucune différence, tshark toujours dit que je vais sortir avec TLSv1: TLSv1 75 Alerte (Niveau: Fatal, Description: poignée de main à l'Échec)

OriginalL'auteur mesh | 2015-12-09