Chiamare l'API di Discourse genera un'eccezione SSLHandshakeException

Ciao a tutti,

Il nostro forum Discourse è configurato con Protocollo SSL: TLSv1.2 e Suite di cifratura robuste: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384.

Quando si chiama l’API di Discourse utilizzando Apache httpclient dal framework Liferay 6.2, che viene eseguito su JDK7, viene generata un’eccezione:

javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure

Penso che ciò sia dovuto al fatto che *JDK7 non implementa alcuna suite di cifratura GCM. Come risolvere questo problema? Esiste un altro modo per chiamare l’API di Discourse dalla piattaforma Java?

Grazie,
Saurabh Khandelwal

Immagino che l’aggiornamento a JDK8 non sia un’opzione?

No, non possiamo aggiornare a JDK8.
Stavo pensando di effettuare la richiesta tramite una chiamata AJAX in JavaScript, ma la richiesta viene bloccata dalla politica CORS.
Come si abilita CORS per Discourse?

Credo che tu debba configurare l’impostazione del sito cors_origins.

E che dire di questa affermazione:
La variabile d’ambiente DISCOURSE_ENABLE_CORS deve essere impostata su true per abilitare CORS.
Come si imposta?

Puoi aggiungerlo in app.yml se stai facendo l’hosting autonomo. Sul nostro hosting è di solito abilitato per impostazione predefinita.