Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java1.6中安装证书,以便从卡钳工具上传工作_Java_Ssl_Caliper - Fatal编程技术网

如何在Java1.6中安装证书,以便从卡钳工具上传工作

如何在Java1.6中安装证书,以便从卡钳工具上传工作,java,ssl,caliper,Java,Ssl,Caliper,我正在使用Caliper运行一些基准测试并将结果上传到 但是,由于SSL的证书问题,上载失败(请参阅底部的堆栈跟踪) 我如何解决这个问题 操作系统:MacOSXMavericks 10.9 JDK:1.6.0_27-b07-395.JDK 在尝试了其他一些SO解决方案后,我在JDK目录中看到: /Library/Java/JavaVirtualMachines/1.6.0_27-b07-395.jdk/Contents/Home/lib/security 有一个文件cacerts实际上是指向此文

我正在使用Caliper运行一些基准测试并将结果上传到

但是,由于SSL的证书问题,上载失败(请参阅底部的堆栈跟踪)

我如何解决这个问题

操作系统:MacOSXMavericks 10.9 JDK:1.6.0_27-b07-395.JDK

在尝试了其他一些SO解决方案后,我在JDK目录中看到: /Library/Java/JavaVirtualMachines/1.6.0_27-b07-395.jdk/Contents/Home/lib/security

有一个文件cacerts实际上是指向此文件的链接:

/System/Library/Java/Support/CoreDeploy.bundle/Contents/Home/lib/security/cacerts

但那个文件不存在

我试着删除链接,并用另一个响应中描述的假证书创建存储文件。现在它失败了:

严重:无法上载试用版c8e684d4-ee41-4366-8334-ae65a9d0626f。考虑手动上传它。 com.sun.jersey.api.client.clienthandler异常:javax.net.ssl.SSLHandshakeException:sun.security.validator.validator异常:PKIX路径生成失败:sun.security.provider.certpath.SunCertPathBuilderException:找不到请求目标的有效认证路径



我通过从头开始重新安装Apple Java包修复了这个问题。

请参阅:此处解释的Mac简易修复程序(创建假证书)在商店里对我不起作用……所以我必须找出在哪里获得有效的证书并安装它们……我想这只是OSX将JDK从/System/Library/Frameworks/JavaVM.framework/Versions移动到/Library/Java/JavaVirtualMachines时弄得一团糟。我建议只下载Java7,它没有旧的目录布局。
SEVERE: Could not upload trial b233811a-9ac6-4684-83f8-30e8a3d74e01. Consider uploading it manually.
com.sun.jersey.api.client.ClientHandlerException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
    at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:149)
    at com.sun.jersey.api.client.Client.handle(Client.java:648)
    at com.sun.jersey.api.client.WebResource.voidHandle(WebResource.java:694)
    at com.sun.jersey.api.client.WebResource.access$400(WebResource.java:74)
    at com.sun.jersey.api.client.WebResource$Builder.post(WebResource.java:548)
    at com.google.caliper.runner.ResultsUploader.processTrial(ResultsUploader.java:104)
    at com.google.caliper.runner.ExperimentingCaliperRun.run(ExperimentingCaliperRun.java:231)
    at com.google.caliper.runner.CaliperMain.exitlessMain(CaliperMain.java:135)
    at com.google.caliper.runner.CaliperMain.main(CaliperMain.java:78)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
    at java.lang.Thread.run(Thread.java:680)
Caused by: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
    at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:190)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1699)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1660)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1643)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1172)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1149)
    at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:434)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:166)
    at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1014)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:230)
    at com.sun.jersey.client.urlconnection.URLConnectionClientHandler$1$1.getOutputStream(URLConnectionClientHandler.java:225)
    at com.sun.jersey.api.client.CommittingOutputStream.commitWrite(CommittingOutputStream.java:117)
    at com.sun.jersey.api.client.CommittingOutputStream.write(CommittingOutputStream.java:89)
    at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202)
    at sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:263)
    at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:106)
    at java.io.OutputStreamWriter.write(OutputStreamWriter.java:190)
    at java.io.BufferedWriter.flushBuffer(BufferedWriter.java:111)
    at java.io.BufferedWriter.write(BufferedWriter.java:212)
    at java.io.Writer.write(Writer.java:140)
    at com.sun.jersey.core.util.ReaderWriter.writeToAsString(ReaderWriter.java:190)
    at com.sun.jersey.core.provider.AbstractMessageReaderWriterProvider.writeToAsString(AbstractMessageReaderWriterProvider.java:128)
    at com.sun.jersey.core.impl.provider.entity.StringProvider.writeTo(StringProvider.java:88)