From: "Tait E Larson" <[EMAIL PROTECTED]>
Sent: Wednesday, July 17, 2002 2:06 PM
Subject: Re: explicit ordering of jars searched by classloader in web
application


>
> Sorry guys.  That was an unfinished email I accidentally sent out.
>
> I attempted to merge the jars.  When I ran a standalone program which had
> previously worked when I explicitly set the correct classpath with only
the
> new jar in the classpath I got the following error:
>
> java.lang.SecurityException: no manifiest section for signature file entry
> matri
> x/vui/TipProvider.class
>         at
> sun.security.util.SignatureFileVerifier.verifySection(SignatureFileVe
> rifier.java:262)
>         at
> sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier
> .java:174)
>         at java.util.jar.JarVerifier.processEntry(JarVerifier.java:284)
>         at java.util.jar.JarVerifier.update(JarVerifier.java:197)
>         at java.util.jar.JarFile.initializeVerifier(JarFile.java:248)
>         at java.util.jar.JarFile.getInputStream(JarFile.java:310)
>         at sun.misc.URLClassPath$4.getInputStream(URLClassPath.java:537)

Interesting.

Try consolidating the jar files into a single jar, but before you create the
jar, remove the MANIFEST file. Particularly if it only has the signature
stuff in it. If these are simply jar files used for their "library"
purposes, rather than as applets/applications, then there isn't anything
really "important" in the MANIFEST file. Remove it and let the jar utility
create a new one.

Now, it's not clear if you're showing the "entire" stack dump, but unless
some class within the original signed jar is checking for the signature,
then a new jar should work just fine.

It looks like java.util.JarFile class is trying to validate the jar file,
and the only reason it would think to do that is because it detects the
signature lines in the MANIFEST. There isn't anything "special" about the
classes within a signed jar file that "knows" that it's in a signed jar
file.

The Class-Path entries in the MANIFEST aren't necessary for a simple library
jar file. Only for jar files that are applets, applications, EAR, etc look
and act upon that Class Path.

Luck,

Will Hartung
([EMAIL PROTECTED])




--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to