004-微信證書問題

1、證書路徑問題linux

  window下能夠直接填寫物理路徑apache

  linux:能夠將文件放置在classpath下。使用一下獲取api

String keyClasspath = Thread.currentThread().getContextClassLoader().getResource("/").getPath() + "cert/apiclient_cert.p12";

2、打包證書DerInputStream.getLength(): lengthTag=111, too big.服務器

  微信支付接口須要用到公鑰和私鑰,密鑰文件統一放到項目src/main/resources的某個目錄下,而後打包部署到測試環境。微信

  報錯:DerInputStream.getLength(): lengthTag=111, too big.maven

  緣由:程序編譯打包時候maven-resources-plugin,證書文件變化,密鑰文件服務器上的文件md5值,與本地MD5值不一致測試

  解決方案:【打包時候排除證書文件編譯】微信支付

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <configuration>
        <encoding>UTF-8</encoding>
        <!-- 過濾後綴爲pem、pfx的證書文件 -->
        <nonFilteredFileExtensions>
            <nonFilteredFileExtension>pem</nonFilteredFileExtension>
            <nonFilteredFileExtension>pfx</nonFilteredFileExtension>
            <nonFilteredFileExtension>p12</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
    </configuration>
</plugin>
相關文章
相關標籤/搜索