Jar包中读取微信支付证书

通过this.getClass().getResourceAsStream()读入数据

KeyStore keyStore = KeyStore.getInstance("PKCS12");

keyStore.load(instream, mchId.toCharArray());

报错:

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

原因:打包时证书文件被篡改

解决办法:

1.spring-boot

<build>    <resources>        <resource>            <directory>src/main/resources</directory>            <filtering>true</filtering>            <excludes>                <!--排除证书文件-->                <exclude>**/*.p12</exclude>            </excludes>        </resource>        <resource>            <directory>src/main/resources</directory>            <!--避免证书文件被篡改-->            <filtering>false</filtering>            <includes>                <include>**/*.p12</include>            </includes>        </resource>    </resources>    <plugins>        <plugin>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-maven-plugin</artifactId>        </plugin>    </plugins></build>

2.apache
<plugin>    <groupId>org.apache.maven.plugins</groupId>    <artifactId>maven-resources-plugin</artifactId>    <configuration>        <encoding>UTF-8</encoding>        <!-- 过滤后缀为p12的证书文件 -->        <nonFilteredFileExtensions>            <nonFilteredFileExtension>p12</nonFilteredFileExtension>        </nonFilteredFileExtensions>    </configuration></plugin>


原文地址:https://www.cnblogs.com/lizg-blogs/p/10323419.html

时间: 2024-11-10 13:20:13

Jar包中读取微信支付证书的相关文章

(转)java 从jar包中读取资源文件

(转)java 从jar包中读取资源文件 博客分类: java 源自:http://blog.csdn.net/b_h_l/article/details/7767829 在代码中读取一些资源文件(比如图片,音乐,文本等等),在集成环境(Eclipse)中运行的时候没有问题.但当打包成一个可执行的jar包(将资源文件一并打包)以后,这些资源文件找不到,如下代码:Java代码 [java] view plaincopy //源代码1: package edu.hxraid; import java

[Java基础] 深入jar包:从jar包中读取资源文件

转载: http://hxraid.iteye.com/blog/483115?page=3#comments 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看下面的代码: //源代码1: package edu.hxraid; import java.io.*; public class Resource { public void getRe

java 从jar包中读取资源文件

在代码中读取一些资源文件(比如图片,音乐,文本等等),在集成环境(Eclipse)中运行的时候没有问题.但当打包成一个可执行的jar包(将资源文件一并打包)以后,这些资源文件找不到,如下代码:Java代码 [java] view plaincopy //源代码1: package edu.hxraid; import java.io.*; public class Resource { public  void getResource() throws IOException{ File fil

【解惑】深入jar包:从jar包中读取资源文件

我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看下面的代码: //源代码1: package edu.hxraid; import java.io.*; public class Resource { public void getResource() throws IOException{ File file=new File("bin/res

从jar包中读取资源

package myspider; import java.io.UnsupportedEncodingException; /** * * @author mark */ public class Test { public static void main(String[] args) throws UnsupportedEncodingException{ Test t=new Test(); //文件名前不加"/",则表示从当前类所在的包下查找该资源.如下则表示的是从包mysp

C#在Linux+Mono环境中使用微信支付证书

最近特殊的需求,要把微信平台一个功能页面部署到Linux(CentOS6.5)下,其中涉及到微信支付退款. 鉴于之前实践过mono+jexus+asp.net mvc的部署,于是问题重点在于解决对商户证书的调用问题. 查看微信支付官方文档关于证书的使用说明 ◆ apiclient_cert.p12是商户证书文件,除PHP外的开发均使用此证书文件. ◆ 商户如果使用.NET环境开发,请确认Framework版本大于2.0,必须在操作系统上双击安装证书apiclient_cert.p12后才能被正常

JAR包中读取资源文件

我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看下面的代码: 1 //源代码1: 2 3 import java.io.*; 4 public class Resource { 5 public void getResource() throws IOException{ 6 File file=new File("bin/resource/re

spring加载jar包中的多个配置文件[转载]

在使用spring加载jar包中的配置文件时,不支持通配符,需要一个一个引入,如下所示: Java代码 <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath*:beanconfigs/applicationContext_1.xml, classpath*:beanconfigs/applicationContext_2.xml, ...

读取Jar包中的资源问题探究

最近在写一个可执行jar的程序,程序中包含了2个资源包,一个是images,一个是files.问题来了,在Eclipse里开发的时候,当用File类来获取files下面的文件时,没有任何问题.但是当程序导出为Runnable Jar时,运行程序时抛出异常,File not found.我们来一探究竟. 首先是我的工程目录结构: 程序中访问images下的图片代码: [java] view plaincopyprint? setIconImage(new ImageIcon(this.getCla