Bouncycastle и iText версии

Я использую iText 5.5.11 следующая глава о цифровых подписях. Я создал свой KeyStore - файл ks.jks и добавил bouncycastle баночка моей classpath,

С помощью bouncycastle 14-157(последняя) версия, которую я получил -

java.lang.ClassNotFoundException: org.bouncycastle.tsp.TimeStampTokenInfo

После TimeStampTokenInfo-class-not-found я попытался использовать bouncycastle 14-145 и эту ошибку:

java.lang.ClassNotFoundException: org.bouncycastle.jcajce.provider.digest.MD2$Digest

Кто-нибудь знает, что еще можно попробовать?

Полный журнал ошибок:

Exception in thread "main" java.lang.NoClassDefFoundError: org/bouncycastle/jcajce/provider/digest/MD2$Digest
    at com.mataf.GenSig.PfxDS.sign(PfxDS.java:51)
    at com.mataf.GenSig.PfxDS.main(PfxDS.java:71)
Caused by: java.lang.ClassNotFoundException: org.bouncycastle.jcajce.provider.digest.MD2$Digest
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 2 more

Благодарю.

1 ответ

Решение

Взгляд на iText 5.5.11 Maven pom.xml показывает:

  <dependencies>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcprov-jdk15on</artifactId>
      <version>1.49</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcpkix-jdk15on</artifactId>
      <version>1.49</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.8.2</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.santuario</groupId>
      <artifactId>xmlsec</artifactId>
      <version>1.5.1</version>
      <optional>true</optional>
    </dependency>
  </dependencies>

Таким образом, iText компилируется с использованием версии BouncyCastle версии 1.49 Java 5-8.

Другие вопросы по тегам