New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SSL connection leads to ArrayStoreException on JDK 6 with some KeyManagerFactory SPI #2847
Comments
Sebb (migrated from Bugzilla): KeyManager[] managers = managerFactory.getKeyManagers(); Now WrappedX509KeyManager implements X509KeyManager which extends KeyManager. I've tried with java.version=1.6.0_31 on Windows and it works fine for me. Please can you provide the simplest possible test script that shows the problem, along with log files for Java 1.5 and 1.6? |
Patrick Heusser (migrated from Bugzilla): thx for looking at it. i had a quick look at the code too. for both java API 1.5 and 1.6 the hierarchy is the same and it compiles with both, but does fail at runtime. so it must be obviously related to the JDK and NOT Jmeter itself. it would be nice, if Jmeter could work "around" it. the sampler with the request fails completely, may be a simple try/catch helps. our server under test asks for a client certificate, even though it's not required in the end. my guess is this causes the failure. regards, |
Sebb (migrated from Bugzilla): Can you provide a simple test case that exhibits the problem, together with any changes you made to jmeter.properties or system.properties? Also, it would be helpful to have the jmeter logs for both runs. If necessary, feel free to replace the names of servers etc with place-holders. Also, just in case it is a specific issue with Java 1.6.0_30, can you try with the current release, i.e. 1.6.0_33? |
Sebb (migrated from Bugzilla): I was able to connect to Tomcat with Firefox and with JMeter; no problems were encountered with 1.5.0_22, 1.6.0_33, 1.7.0_05. This is looking like a problem with your Java 6 installation, i.e. the bug should be closed as "WORKSFORME" unless you can provide a test case that can be repeated by others. |
@pmouawad (migrated from Bugzilla): Take the following snippet: Long is a Number but it provokes an ArrayStoreException cause allocated array elements if not a Long array. |
@pmouawad (migrated from Bugzilla): |
@pmouawad (migrated from Bugzilla): URL: http://svn.apache.org/viewvc?rev=1353205&view=rev Modified: |
@pmouawad (migrated from Bugzilla):
|
Patrick Heusser (migrated from Bugzilla): i did some more testing with different JVM versions. i found, that my observation is very specific to the version i used (see bug submission). i did tests with the two version listed below, both work OK! still, i gonna try your nightly fix. sorry to be a bit slow on that, i'm in a rather restricted environment where it's a bit hard to test such stuff... one note: i'm extremely impressed by the work and commitment that you guys do. respect and thanks a lot! JMeter is a cool tool :-) JVM WORKS OK: JVM WORKS OK: cheers, |
Patrick Heusser (migrated from Bugzilla): i tested the nightly build r1353803 this morning. => it was a full success! the exception has gone. thanks a lot, |
Patrick Heusser (Bug 53440):
On Windows with JDK 6 when establishing a connection over SSL i got the stack posted below with the array ArrayStoreException... This is reproducable and does NOT happen on a JDK 5 installation.
This happens just at runtime. The code can be compiled with JDK 5 and JDK 6...
Exact java version that produces the error:
workaround:
Use a JDK 1.5
STACK-TRACE
java.lang.ArrayStoreException: org.apache.jmeter.util.JsseSSLManager$WrappedX509KeyManager
at org.apache.jmeter.util.JsseSSLManager.createContext(JsseSSLManager.java:241)
at org.apache.jmeter.util.JsseSSLManager.getContext(JsseSSLManager.java:198)
at org.apache.jmeter.util.HttpSSLProtocolSocketFactory.getSSLSocketFactory(HttpSSLProtocolSocketFactory.java:103)
at org.apache.jmeter.util.HttpSSLProtocolSocketFactory.createSocket(HttpSSLProtocolSocketFactory.java:147)
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
at org.apache.jmeter.protocol.http.sampler.HTTPHC3Impl.sample(HTTPHC3Impl.java:249)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:62)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1060)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1049)
at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:442)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:271)
at java.lang.Thread.run(Unknown Source)
Best regards,
patrick
Severity: normal
OS: Windows XP
The text was updated successfully, but these errors were encountered: