0

Webアプリケーションでbrowser-mobプロキシを使用して、プロキシサーバーをエミュレートしています。mvn cleanパッケージを実行した後、jarを実行すると、次のエラーが発生します。

Exception in thread "main" java.lang.SecurityException: no manifiest section for signature file entry org/bouncycastle/asn1/ocsp/ResponderID.class
at sun.security.util.SignatureFileVerifier.verifySection(SignatureFileVerifier.java:399)
at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:250)
at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:193)
at java.util.jar.JarVerifier.processEntry(JarVerifier.java:305)
at java.util.jar.JarVerifier.update(JarVerifier.java:216)
at java.util.jar.JarFile.initializeVerifier(JarFile.java:341)
at java.util.jar.JarFile.getInputStream(JarFile.java:406)
at sun.misc.URLClassPath$JarLoader$2.getInputStream(URLClassPath.java:752)
at sun.misc.Resource.cachedInputStream(Resource.java:77)
at sun.misc.Resource.getByteBuffer(Resource.java:160)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:436)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
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:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:472)

Meta-Infフォルダーには、jarの作成中に除外できる署名証明書がありません。

4

3 に答える 3

1

いくつかの弾む城のクラスで同様の問題があったことを覚えています。

私の問題は、apache-dsプロジェクトのクラスだけでなく、apache-dsサードパーティの依存関係のすべてのクラスを含む「ueber-jar」(私の場合はapache-ds-all)が原因で発生しました。

bouncycastleクラスは元々署名されたjarファイルで出荷されているため、クラスが別の場所からロードされたときにセキュリティ例外が発生しました。これは、最初にJARに署名することの全体的なポイントです。

クラスパス内のすべてのJARファイルをスキャンして、org / bouncycastle / asn1 / ocsp/ResponderID.classが非bouncycastle配布jarファイルに含まれているかどうかを確認することをお勧めします。

お役に立てば幸いです。

于 2012-09-06T20:58:05.783 に答える
1

ic4uパッケージにセキュリティ上の問題がありました。依存関係から除外しただけで、すべて正常に機能しました。

<dependency>
  <groupId>biz.neustar</groupId>
  <artifactId>browsermob-proxy</artifactId>
  <version>${browser-mob-version}</version>
  <exclusions>
    <exclusion>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-api</artifactId>
    </exclusion>
    <exclusion>
      <artifactId>icu4j</artifactId>
      <groupId>com.ibm.icu</groupId>
    </exclusion>
  </exclusions>
</dependency>
于 2012-09-10T11:16:02.907 に答える
0

iText 4.2.0とbouncycastleライブラリ(ResponderIDおよび他のクラスに関連するSecurityExceptions)でもまったく同じ問題が発生しました。

META-INF結局、iTextに同梱されている署名付きjarのディレクトリを削除してしまいました。それは最もエレガントな方法ではないかもしれませんが、少なくとも私にとっては問題を解決しました。

于 2013-03-19T18:24:43.240 に答える