ジュラルミンの日々 2nd

はてなダイアリーからはてなブログにお引っ越し。DTM関連多めに充実出来たらと思います。

JmeterでHTTPS通信したらjavax.net.ssl.SSLProtocolException: handshake alert: unrecognized_nameが発生する

どうやらJDK7系をインストールすると発生するらしい。

これかなー?

リリースノート抜粋
概要:このリリースでは、SSLv2Helloハンドシェイク・プロトコルはデフォルトで無効化されています。このプロトコルは、SSLv3を認識しない旧式のSSLv2サーバー実装と通信する目的で、SSLv3サーバー実装によって使用されていたものです。この変更による副次的作用は、SSL/TLS拡張がHelloメッセージから削除されない点です。認識されない拡張機能SSL/TLSピアによって無視されるため、ほとんどの場合、これは問題になりません。しかし、古いサーバー実装では、問題が発生する可能性もあります。
RFE: 4873188、6916074

ソース:http://www.oracle.com/technetwork/jp/java/javase/jdk7-relnotes-418459-ja.html#knownissues

詳しいことはよくわかんないけど、Jmeterをjre6系で起動すれば大丈夫みたい。


手順
1.環境設定のJAVA_HOMEやPATHにjre6を設定する。→参考:http://www.javadrive.jp/install/jdk/index5.html
2.JMETER_HOME/bin/以下にあるjmeter.batにPATHを指定する次の1行を足す。


set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %RMIGC% %PERM% %DDRAW%
set PATH=%JAVA_HOME%\bin;%PATH% ← これ
%JM_START% %JM_LAUNCH% %ARGS% %JVM_ARGS% -jar "%JMETER_BIN%ApacheJMeter.jar"

これで大丈夫なはず。

確認方法はjmeter.logで確認できる。
2011/11/20 00:37:15 INFO - jmeter.JMeter: java.version=1.6.0_29

ちなみにコントロールパネルのJAVA設定で、jre7の有効のチェックを外してもダメだった。

時間ある時に詳しく調べよう。(←調べないフラグ)