我使用iText 5.5.0和BouncyCastle bcprov-jdk15on-1.50对pdf进行数字签名。如果我不在MakeSignature.signDetached方法中包含时间戳,那么一切都可以正常工作。
当我使用指定TSAURL的TSAClient时,我的代码显示错误
java.lang.NoClassDefFoundError: org/bouncycastle/asn1/ASN1Encodable at MakeSignature.signDetached method即使我处理了异常,我的程序也被终止了。
我尝试了不同版本的bouncycastle,但我得到了相同的错误,但找不到不同的类。
我真的需要在签名中包含时间戳。我该怎么办呢。
发布于 2014-04-07 21:30:55
您可以通过以下URL查看itext 5.5的依赖关系。
http://mvnrepository.com/artifact/com.itextpdf/itextpdf/5.5.0
根据这个页面,itext5.5对应的bouncycastle版本是1.49。我在互联网上的某个页面上看到bouncycastle正在发生巨大的变化,通常很难找到与itext的特定版本相对应的bouncycastle版本。
发布于 2014-05-20 20:55:49
请从下面给定的链接下载bcprov-jdk15on-150.jar (适用于JDK1.5- 1.7)文件,并添加到您的项目中以解决java.lang.NoClassDefFoundError: org/bouncycastle/asn1/ASN1Encodable异常。
http://www.bouncycastle.org/latest_releases.html
根据您的JDK版本,从上面的链接中找到适当的jar文件。
发布于 2016-02-22 15:00:28
在您的项目中包含iText的推荐方式是使用Maven.然后,Maven将为您解决依赖关系。我读到你使用Eclipse,Eclipse有一个非常好的Maven插件。
把这个放到你的pom.xml里
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.8</version>
</dependency> 欲了解更多信息,请访问http://developers.itextpdf.com/itext-java
https://stackoverflow.com/questions/22513697
复制相似问题