I am trying to create a Telegram bot, and my code is already working, but suddenly I can not start my program, because it crashes with the following error. I did not change any code and did nothing.
Perhaps this is an operating system error?
Exception in thread "main" javax.net.ssl.SSLException: java.security.ProviderException: java.lang.NegativeArraySizeException at sun.security.ssl.Alerts.getSSLException(Alerts.java:208) at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949) at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1906) at sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1889) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1410) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559) at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:153) at test.main(test.java:10) Caused by: java.security.ProviderException: java.lang.NegativeArraySizeException at sun.security.ec.ECKeyPairGenerator.generateKeyPair(ECKeyPairGenerator.java:147) at java.security.KeyPairGenerator$Delegate.generateKeyPair(KeyPairGenerator.java:703) at sun.security.ssl.ECDHCrypt.<init>(ECDHCrypt.java:77) at sun.security.ssl.ClientHandshaker.serverKeyExchange(ClientHandshaker.java:721) at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:281) at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979) at sun.security.ssl.Handshaker.process_record(Handshaker.java:914) at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062) at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) ... 5 more Caused by: java.lang.NegativeArraySizeException at sun.security.ec.ECKeyPairGenerator.generateECKeyPair(Native Method) at sun.security.ec.ECKeyPairGenerator.generateKeyPair(ECKeyPairGenerator.java:128) ... 14 more
Sometimes the code leads to a segmentation error:
#
Minimum code to reproduce the error:
import java.net.URL; import java.net.URLConnection; import java.io.IOException; import java.net.MalformedURLException; class test { public static void main(String[] args) throws IOException, MalformedURLException { URL url = new URL("https://api.telegram.org/bot<ID>/getUpdates?offset=0"); URLConnection c = url.openConnection(); c.connect(); } }
I am running code on Fedora 25 and OpenJDK.
$ uname -a Linux localhost.localdomain 4.9.5-200.fc25.x86_64 #1 SMP Fri Jan 20 12:24:16 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ java -version openjdk version "1.8.0_111" OpenJDK Runtime Environment (build 1.8.0_111-b16) OpenJDK 64-Bit Server VM (build 25.111-b16, mixed mode)
source share