I am trying to use Apache JMeter 3.3 to load test an internal website. I followed the Recording tutorial mentioned on the Jmeter site (Apache JMeter HTTP(S) Test Script Recorder). I have set the following in the JMeter system.properties file to use a keystore where I have a preloaded certificate for the internal website.
javax.net.ssl.keyStore
javax.net.ssl.keyStorePassword
When I start the recorder, I get the following error in the log.
2018-02-06 21:18:57,036 INFO o.a.j.u.SSLManager: KeyStore created OK
2018-02-06 21:18:57,036 INFO o.a.j.u.SSLManager: Total of 1 aliases loaded OK from keystore
2018-02-06 21:19:02,620 INFO o.a.j.p.h.p.ProxyControl: [56429] Creating entry aus5.mozilla.org in C:\Software\Apache\JMeter\apache-jmeter-3.3\bin\proxyserver.jks
2018-02-06 21:19:08,735 ERROR o.a.j.p.h.p.Proxy: [56429] Problem with keystore
java.io.IOException: Command failed, code: 1
keytool error (likely untranslated): java.security.cert.CertificateException: Fail to parse input stream
at org.apache.jorphan.exec.KeyToolUtils.runNativeCommand(KeyToolUtils.java:338) ~[jorphan.jar:3.3 r1808647]
at org.apache.jorphan.exec.KeyToolUtils.keytool(KeyToolUtils.java:402) ~[jorphan.jar:3.3 r1808647]
at org.apache.jorphan.exec.KeyToolUtils.generateSignedCert(KeyToolUtils.java:299) ~[jorphan.jar:3.3 r1808647]
at org.apache.jorphan.exec.KeyToolUtils.generateHostCert(KeyToolUtils.java:276) ~[jorphan.jar:3.3 r1808647]
at org.apache.jmeter.protocol.http.proxy.ProxyControl.updateKeyStore(ProxyControl.java:1563) ~[ApacheJMeter_http.jar:3.3 r1808647]
at org.apache.jmeter.protocol.http.proxy.Proxy.getSSLSocketFactory(Proxy.java:333) [ApacheJMeter_http.jar:3.3 r1808647]
at org.apache.jmeter.protocol.http.proxy.Proxy.startSSL(Proxy.java:440) [ApacheJMeter_http.jar:3.3 r1808647]
at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:202) [ApacheJMeter_http.jar:3.3 r1808647]
2018-02-06 21:19:08,735 WARN o.a.j.p.h.p.Proxy: [56429] Unable to negotiate SSL transaction, no keystore?
2018-02-06 21:19:08,735 ERROR o.a.j.p.h.p.Proxy: [56429] Exception when processing sample
java.io.IOException: Unable to negotiate SSL transaction, no keystore?
at org.apache.jmeter.protocol.http.proxy.Proxy.startSSL(Proxy.java:457) ~[ApacheJMeter_http.jar:3.3 r1808647]
at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:202) [ApacheJMeter_http.jar:3.3 r1808647]
2018-02-06 21:19:08,735 WARN o.a.j.p.h.p.Proxy: [56429] Exception while writing error
java.net.SocketException: Unrecognized Windows Sockets error: 0: socket write error
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:120) ~[?:1.8.0-internal]
at java.net.SocketOutputStream.write(SocketOutputStream.java:143) ~[?:1.8.0-internal]
at java.io.DataOutputStream.writeBytes(DataOutputStream.java:287) ~[?:1.8.0-internal]
at org.apache.jmeter.protocol.http.proxy.Proxy.writeErrorToClient(Proxy.java:574) [ApacheJMeter_http.jar:3.3 r1808647]
at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:267) [ApacheJMeter_http.jar:3.3 r1808647]
2018-02-06 21:21:04,050 INFO o.a.j.r.ResultCollector: Shutdown hook started
2018-02-06 21:21:04,065 INFO o.a.j.r.ResultCollector: Shutdown hook ended
Please advise why this strange keystore error is coming up.