Ho implementato un client JAX-WS utilizzando ApacheCXF (v3.0.4) e tutto funziona correttamente ma il problema si presenta quando voglio utilizzare una connessione sicura (SSL/TLS) con java 8 (jdk1.8.0_25).Nome_server esteso (estensione SNI) non inviato con jdk1.8.0 ma inviato con jdk1.7.0
vedo la seguente eccezione nel log (-Djavax.net.debug = tutte):
main, handling exception: java.net.SocketException: Connection reset
main, SEND TLSv1.2 ALERT: fatal, description = unexpected_message
main, WRITE: TLSv1.2 Alert, length = 2
main, Exception sending alert: java.net.SocketException: Connection reset by peer: socket write error
Dopo un'analisi depeer ho osservato il problema è causato perché il con Java 8 il nome server (SNI) non viene inviato ma con Java 7 viene inviato e la chiamata al servizio web funziona correttamente.
Java 8 log (-Djavax.net.debug = tutte): Missing "nome_server Extension"
[...]
Compression Methods: { 0 }
Extension elliptic_curves, curve names: {secp256r1, sect163k1, sect163r2, secp192r1, secp224r1, sect233k1, sect233r1, sect283k1, sect283r1, secp384r1, sect409k1, sect409r1, secp521r1, sect571k1, sect571r1, secp160k1, secp160r1, secp160r2, sect163r1, secp192k1, sect193r1, sect193r2, secp224k1, sect239k1, secp256k1}
Extension ec_point_formats, formats: [uncompressed]
Extension signature_algorithms, signature_algorithms: SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA224withECDSA, SHA224withRSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA, MD5withRSA
***
[...]
Java 7 log (-Djavax.net.debug = tutto) (opere): "Estensione nome_server" è impostato
[...]
Compression Methods: { 0 }
Extension elliptic_curves, curve names: {secp256r1, sect163k1, sect163r2, secp192r1, secp224r1, sect233k1, sect233r1, sect283k1, sect283r1, secp384r1, sect409k1, sect409r1, secp521r1, sect571k1, sect571r1, secp160k1, secp160r1, secp160r2, sect163r1, secp192k1, sect193r1, sect193r2, secp224k1, sect239k1, secp256k1}
Extension ec_point_formats, formats: [uncompressed]
Extension signature_algorithms, signature_algorithms: SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA224withECDSA, SHA224withRSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA, MD5withRSA
Extension server_name, server_name: [host_name: testeo.hostname.es]
***
[...]
si osserva che con Java 7 il estensione nome_server, nome_server: [HOST_NAME: testeo.hostname.es] è impostato e poi il web s ervice invocation funziona con successo.
Perché Java 8 non ha impostato il nome_server come ha fatto Java 7? È un problema di configurazione Java?
Benvenuti in Stack Overflow! A differenza dei siti di forum, non utilizziamo "Grazie" o "Qualsiasi aiuto apprezzato" o firme su [so]. Vedi "[Se 'Hi', 'thanks', tagline e saluti saranno rimossi dai post?] (Http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be -removed-from-posts) .Ciao, è "Grazie in anticipo", non "Grazie in anticipo". –