0

我正在运行一个 PlayFramework 2 应用程序。该应用程序建立一个客户端认证的 SSL 会话到第二台服务器。为此,我将 Java Keystore 文件存储在资源目录中。在我的本地盒子上一切正常。接下来,我创建了一个用于上传到 Cloud Foundry 的 dist 包,它本质上是用一堆 Jars 构建一个 war 文件。知道如何在将其编译成 Jar 并上传到 CloudFoundry 后从我的 java 代码中访问密钥库吗?任何方向将不胜感激。这是当前的代码片段。

最好的,

SR

//READS THE JAVA KEYSTORE FILE FROM A RELATIVE LOCATION
File clientKS = new File("resource/devportal.jks");

//SET CONNECTION PARAMS             
con.setRequestMethod("POST");
con.setRequestProperty("Content-Type","application/json");
con.setDoOutput(true);
con.setSSLSocketFactory(getFactory(clientKS, passphrase.toCharArray()));
4

2 回答 2

1

假设除了使用 java.io.File 之外别无他法,您可能想尝试通过将其放在应用程序的类路径中来获取它并执行类似的操作

AnyClassOfYourApp.class.getResource("devportal.jks").getFile()
于 2012-10-18T14:16:11.497 回答
0

已经有一段时间了,但试试这个:

    //TESTING BY USING INCLUDED KEYSTORE IN JAR FILE
    String ksPath = "/res/devportal.jks";
    URL jksURL = PostNvp.class.getResource(ksPath);
    File jksStore = new File(jksURL.toURI());
    //TESTING

PostNvp 是我的 java 类 PostNvp.java 所在的代码片段。

于 2013-02-01T20:24:13.547 回答